|
1 / 1 / 0
Регистрация: 12.07.2012
Сообщений: 14
|
|
Как разделять код на отдельные файлы20.08.2012, 22:39. Показов 19895. Ответов 12
Метки нет (Все метки)
в С++ все понятно - заголовочные(.h), реализация(.cpp). А как поступить в C# ? на данном этапе есть окно MainForm (соответственно файлы MainForm.cs и MainForm.Designer.cs). Окно пока одно, но на нем очень много контролов (деревья, вкладки и т д). В итоге очень длинный файл MainForm.cs, так и должно быть ? Вообще не могу понять структуру, объясните пожалуйста новичку.
0
|
|
| 20.08.2012, 22:39 | |
|
Ответы с готовыми решениями:
12
Нужно, чтобы VB загружал отдельные текстовые файлы или другие в код программы Разбить документ на отдельные файлы и переименовать каждый файл используя слияние. Поправить код |
|
9 / 9 / 2
Регистрация: 02.10.2010
Сообщений: 51
|
|
| 20.08.2012, 22:44 | |
|
MainForm.cs - это так называемый бехайнд код, в котором выполняется логика, находятся обработчики событий.
Дизайнер же отвечает за размещение объектов (контролов ) на форме. Можно в принципе все в одном файле размещать, но это немножко нарушает структуру и может быть не понятным. Также можно создавать собственные классы имя_класса.cs и использовать логику прописанную в нем в файле mainform.cs.
0
|
|
|
Темная сторона .Net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
|
|
| 20.08.2012, 22:45 | |
|
так он же partial класс..не нравится раздели на 2 или 3 файла
0
|
|
|
9 / 9 / 2
Регистрация: 02.10.2010
Сообщений: 51
|
||
| 20.08.2012, 22:56 | ||
|
Обратиться даже к парадигме ООП, где идут классы,, наследование, интерфейсы.... Все в одном классе писать смысла нет, даже если он и партиал. Партиал классы удобны в других ситуациях.
0
|
||
|
1 / 1 / 0
Регистрация: 12.07.2012
Сообщений: 14
|
||
| 23.08.2012, 23:34 [ТС] | ||
|
0
|
||
|
Темная сторона .Net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
|
|||
| 24.08.2012, 00:33 | |||
|
partial удобен разбивая главный класс на разные по ф-нальности участки кода
0
|
|||
|
9 / 9 / 2
Регистрация: 02.10.2010
Сообщений: 51
|
||
| 24.08.2012, 00:45 | ||
|
Вот к примеру про язык "Ада", я почему-то дискуссий нигде не встречал, и думаю что этим языком уже никто не пользуется, или лишь единицы, вот и дискуссий нет, а C# - другое дело ))
2
|
||
|
5 / 5 / 2
Регистрация: 13.04.2012
Сообщений: 21
|
||||||
| 24.08.2012, 01:24 | ||||||
|
А можно и я тут спрошу? =)
Сегодня так же попробовал разделить код на файлы... Сейчас у меня 2 файла - Form1.cs и Free.cs В Form1 имеется ListView, в нем столбцы с данными. Раньше, до разделения на части, можно было делать все что угодно с этими данными, сейчас (после разделения) Items.Count из Free.cs пишет что строк 0 и выдает ошибку. Если же перенести этот код назад, то все работает нормально.
0
|
||||||
|
0 / 0 / 0
Регистрация: 14.06.2012
Сообщений: 4
|
|
| 24.08.2012, 07:54 | |
|
1 способ
1. Размещаешь код в файлах *.cs в соответствии с той логической функциональностью, как ты считаешь правильным. Описание класса должно быть ограничено рамками такого файла (если не использовать partial) 2.все эти файлы д.б. в одном Solution. 2 способ 1. Создаешь файл ClassLibrary c описанием классов, компилируешь его, и эту сборку делаешь либо приватной(размещаешь ее в каталоге Bin/Debug), либо в глобальном кэше (GAC). 2. В случае приватной сборки добавляешь на нее ссылку в проекте (AddReference ..) и делаешь ее "видимой" используя using namespace в начале твоего рабочего файла
0
|
|
|
5 / 5 / 2
Регистрация: 13.04.2012
Сообщений: 21
|
|
| 24.08.2012, 12:07 | |
|
Все это делал. но все еще не могу разобраться, почему код из файла Free.cs не может получить данные из Listview.
0
|
|
|
51 / 38 / 5
Регистрация: 14.01.2012
Сообщений: 127
|
||||||||||||
| 24.08.2012, 14:21 | ||||||||||||
|
(Хотя сам когда первый раз пробовал партиал, ничо не вышло, хотя делал все прально, причину так и не нашел Form1.cs
1
|
||||||||||||
|
Темная сторона .Net
592 / 489 / 39
Регистрация: 21.07.2012
Сообщений: 1,668
|
|
| 24.08.2012, 14:24 | |
|
0
|
|
| 24.08.2012, 14:24 | |
|
Помогаю со студенческими работами здесь
13
Как разбить проект на отдельные файлы? Как разбить CSV файл на отдельные файлы Как создать отдельные файлы для компиляции в одном проекте в C++? Как записывать результат в отдельные файлы: txt или json ? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|