Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/64: Рейтинг темы: голосов - 64, средняя оценка - 4.78
1 / 1 / 0
Регистрация: 23.03.2016
Сообщений: 19

Как связаны Form1.cs и Form1.Designer.cs?

02.08.2016, 00:32. Показов 12606. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
При создании проекта приложение Windows Forms,у нас имеется 4 вкладки:

-1) Program.cs-точка входа для приложения
-2) Form1.cs
-3) Form1.Designer.cs
-4) Form1.cs[конструктор]

Мне нужно объяснение, что происходит во 2 и 3?
И как они ВСЕ между собой связанны?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
02.08.2016, 00:32
Ответы с готовыми решениями:

Form1.Designer.cs как найти этот класс?
Как?

Исправления на Form1.Designer.cs при удалении/замене обработчика
VS2010. До этого проходил по ошибкам, выданным компилятором, и просто комментировал их, потом они исчезали. Но теперь написал пару...

Через Form1 открывают Form2 там открывается Form3 которая меняет данные в Form1. Но они не меняются
В первой форме Main по нажатию кнопки вызываю другую форму private void Button_AddVetrina(object sender, EventArgs e) { ...

10
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
02.08.2016, 00:36
Цитата Сообщение от DGGDAK47 Посмотреть сообщение
И как они ВСЕ между собой связанны
Reflection
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
02.08.2016, 01:11
DGGDAK47, в файлах Form1.cs и Form1.Designer.cs находятся две части класса-наследника от Form. Это так называемый partial class. В Form1.cs пишет код программист, а в Form1.Designer.cs размещает код визуальный дизайнер. Связь между всеми этими файлами простая. В Program.cs находится Main который создает экземпляр Form1, который объявлен в Form1.cs и Form1.Designer.cs.

Добавлено через 1 минуту
Цитата Сообщение от DataPlanner Посмотреть сообщение
Reflection
Reflection тут ни при чем. Это run-time механизм получения информации о типах, а не какое-то средство связывающее классы.
0
Эксперт .NET
 Аватар для Wolfdp
3790 / 1767 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
02.08.2016, 01:25
Цитата Сообщение от DGGDAK47 Посмотреть сообщение
Мне нужно объяснение, что происходит во 2 и 3?
Form1.cs
По сути это второй файл partial class. В него вынесен конструктор и можем дополнять всем остальным, что не влезло в автокод.

Цитата Сообщение от DGGDAK47 Посмотреть сообщение
Form1.Designer.cs
Это автокод. Сюда заносится вся визуальна байда, которую накидываешь на форме в графическом представлении. Категорически не рекомендуется лазит в нем руками, ибо можно все порушить, плюс при открытом Designer все изменения перезатираются любым визуальным изменением.

Цитата Сообщение от DGGDAK47 Посмотреть сообщение
И как они ВСЕ между собой связанны?
Темное колдунство, влючающее парсинг файла Designer.cs и Reflection. Можно тупо забить и не разбиратся в деталях, практического смысла в єтом нет. Если очень не нравится, всегда можно прейти к старому ручному написанию всего кода в .cs, и подлючать нужные формочки в Program.cs

p.s. по сути єто визуальная обертка над обычным class, унаследованым от Form. Помогает не заморачиватся с растановкой контролов в коде, их визуальным оформлением и настройкой.

Добавлено через 1 минуту
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Это run-time механизм получения информации о типах, а не какое-то средство связывающее классы.
оно точно тупо парсит файл на текстовый код, при создании визуального представления?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
02.08.2016, 01:31
Цитата Сообщение от Wolfdp Посмотреть сообщение
оно точно тупо парсит файл на текстовый код, при создании визуального представления?
Я не знаю как он работает. Microsoft не раскрывает детали внутреннего устройства визуального дизайнера. На мой взгляд это не играет никакой роли. Для нас как программистов C# важно что компилятор компилирует эти файлы как и любые другие.
0
Эксперт .NET
 Аватар для Wolfdp
3790 / 1767 / 371
Регистрация: 15.06.2012
Сообщений: 6,543
Записей в блоге: 3
02.08.2016, 01:35
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Microsoft не раскрывает детали внутреннего устройства визуального дизайнера.
для теста, попробовал внести по аналогии с label1 новый label2, при закрытой студии. Вроде норм подхватило. Подозреваю что парсится внутреняя часть этого файла.

Не по теме:

>>Не надо коверкать буквы русского алфавита
нет русс раскладки, печатать через alt не удобно =(

0
02.08.2016, 01:37

Не по теме:

Цитата Сообщение от Wolfdp Посмотреть сообщение
нет русс раскладки, печатать через alt не удобно
Что мешает поставить?

0
02.08.2016, 01:42

Не по теме:

Цитата Сообщение от OwenGlendower Посмотреть сообщение
Что мешает поставить?
фобия трех раскладок. >_< больная тема, менять не буду.

0
02.08.2016, 01:44

Не по теме:

Wolfdp, тебе виднее. Однако прошу все-таки не коверкать буквы э и ы.

0
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
02.08.2016, 02:40
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Reflection тут ни при чем.
Среда рефлектит сборку перед загрузкой в память, а как код представлен для разработчика значения не имеет. Теоретически формы и классы вообще могут быть не связаны друг с другом, так например сделано в WPF, где код и разметка встречаются только в регистрах процессора.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18298 / 14222 / 5368
Регистрация: 17.03.2014
Сообщений: 28,900
Записей в блоге: 1
02.08.2016, 09:27
DataPlanner, мы не знаем как именно работает дизайнер, но что более важно что разговор не о нем, а о взаимосвяси кода расположенного в разных файлах Windows Forms приложения. И вот к этому reflection и внутреннее устройство дизайнера VS не имеют отношения.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
02.08.2016, 09:27
Помогаю со студенческими работами здесь

"XXX.Form1" уже определяет член с именем "Form1" с теми же типами параметров
Привет, всем! Есть такой код. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; ...

Как из form1 вызвать form2?
Здравствуйте, как из form1 вызвать form2? То есть 2ое окно.

Как сделать закругленные кнопки в Form1
Всем привет.Вопрос:У меня есть кнопка на form1,но мне не нравиться что она прямоугольная,я хочу сделать её закругленной. Подскажите как. ...

Как в подобном коде увидеть form1?
namespace WindowsFormsApplication1 { public partial class Form1 : Form { public string indata2 = &quot;&quot;; ...

Как передать значения из form2 в form1?
нужна помощь . решил тут сделать clicker то есть когда кликаешь на кнопку и прибавляется + 1 . потом меня занесло сделать магазин , в form2...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru