Дизайнер Winforms:Изменить (и сохранить) свойства в подобъектах

StackOverflow https://stackoverflow.com/questions/600759

Вопрос

Для элемента управления WinForms я хотел бы переместить определенные настройки в подобъект.Один из них — это пользовательский класс, содержащий все строки пользовательского интерфейса, другой — OpenFileDialog:

class MyControl: Control
{
  // ...
  private OpenFileDialog m_dlgOpen = new OpenFileDialog();
  public OpenFileDialog DialogOpen
  {
     get { return m_dlgOpen; }
  }
}

Это добавляет подобъект в дизайнер и позволяет редактировать его свойства (например,заголовок, расширение по умолчанию, фильтр).Однако изменения не добавляются в InitalizeComponent метод, поэтому они теряются.

Можно ли сделать так, чтобы эти свойства «сохранялись» в InitializeComponent метод?

Это было полезно?

Решение

Скажите дизайнеру, чтобы он сериализовал сам объект:

  [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)]
  public OpenFileDialog DialogOpen {
    get { return m_dlgOpen; }
  }
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top