Система шаблонов Winform, такая как ASP.NET MasterPage или MS Access SubForm

2

Существует ли Framework Winform для чего-то похожего на ASP.NET Masterpage или SubForm MS Access?

В MS Access SubForm вы можете сделать как ASP.NET Masterpage. Это огромная потеря времени с Winform, когда приходится создавать много сложной формы. Вы должны компенсировать либо генерацию кода, которая создает дублирование кода, либо выполняет динамическую форму Runtime Dynamic Form, которая намного сложнее.

Я искал в Интернете, но не могу найти.

Теги:
winforms

2 ответа

2
Лучший ответ

Вы можете добавлять формы в форму или в панель формы.

public Form1()
{
    InitializeComponent();

    Form2 embeddedForm = new Form2();
    embeddedForm.TopLevel = false;
    Controls.Add(embeddedForm);
    embeddedForm.Show();
}

Вам нужно будет установить FormBorderStyle в None, если вы не хотите иметь реальную подвижную форму внутри вашей формы.

Я был в спешке во время публикации, но Хенк прав. Вы должны подумать о создании пользовательского элемента управления для этого. Не путать с настраиваемым элементом управления, который предназначен для того, когда вам нужно сделать свой собственный чертеж вместо использования стандартных элементов управления Windows.

  • 0
    Отлично, я этого не знал, спасибо.
  • 0
    Лучше использовать UsetrControl для этого - это разработано для этого.
5

Завершает работу с основными страницами - наследование формы. Это обычное наследование классов, но также поддерживается дизайнером. Попробовать:

1) Добавьте форму с кнопками Ok и Cancel, Build project (существенный)

2) Выберите "Проект", "Добавить новый элемент", "Windows", а затем "Унаследованный шаблон формы". Выберите форму с шага 1) в качестве базовой формы. Добавьте некоторые элементы управления.

3) Повторите шаг 2) несколько раз

4) создайте несколько кнопок для отображения форм, сборки и тестирования

5) Вернитесь к форме из 1) и измените несколько вещей (Background), запустите снова


Другим инструментом являются UserControls, они работают так же, как и в ASP.NET. Вы разрабатываете их как Формы и применяете их как Элементы управления.

  • 0
    Спасибо, попробую это тоже.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню