Существует ли Framework Winform для чего-то похожего на ASP.NET Masterpage или SubForm MS Access?
В MS Access SubForm вы можете сделать как ASP.NET Masterpage. Это огромная потеря времени с Winform, когда приходится создавать много сложной формы. Вы должны компенсировать либо генерацию кода, которая создает дублирование кода, либо выполняет динамическую форму Runtime Dynamic Form, которая намного сложнее.
Я искал в Интернете, но не могу найти.
Вы можете добавлять формы в форму или в панель формы.
public Form1()
{
InitializeComponent();
Form2 embeddedForm = new Form2();
embeddedForm.TopLevel = false;
Controls.Add(embeddedForm);
embeddedForm.Show();
}
Вам нужно будет установить FormBorderStyle
в None
, если вы не хотите иметь реальную подвижную форму внутри вашей формы.
Я был в спешке во время публикации, но Хенк прав. Вы должны подумать о создании пользовательского элемента управления для этого. Не путать с настраиваемым элементом управления, который предназначен для того, когда вам нужно сделать свой собственный чертеж вместо использования стандартных элементов управления Windows.
Завершает работу с основными страницами - наследование формы. Это обычное наследование классов, но также поддерживается дизайнером. Попробовать:
1) Добавьте форму с кнопками Ok и Cancel, Build project (существенный)
2) Выберите "Проект", "Добавить новый элемент", "Windows", а затем "Унаследованный шаблон формы". Выберите форму с шага 1) в качестве базовой формы. Добавьте некоторые элементы управления.
3) Повторите шаг 2) несколько раз
4) создайте несколько кнопок для отображения форм, сборки и тестирования
5) Вернитесь к форме из 1) и измените несколько вещей (Background), запустите снова
Другим инструментом являются UserControls, они работают так же, как и в ASP.NET. Вы разрабатываете их как Формы и применяете их как Элементы управления.