Это зависит от того, какую функциональность вы хотите. Если вам нужно установить свойства только при добавлении элемента управления в форму, тогда установка свойств в конструкторе элемента управления работает отлично. Однако изменения, внесенные с помощью панели «Свойства», будут иметь приоритет, и установка свойств в конструкторе элемента управления не обязательно повлияет на существующие экземпляры элемента управления.
Если вы хотите иметь возможность изменять свойства для экземпляров элемента управления в одном месте, назначение привязок в (настройки приложения), (привязки свойств) работает. Затем вы можете изменить все привязки из файла Settings.settings. Тем не менее, для этого требуется назначить привязки свойств для каждого экземпляра элемента управления.
Теперь для финала. Если вы хотите установить свойства в классе элемента управления, которые влияют на все экземпляры элемента управления, независимо от того, должны ли они быть созданы или уже существуют, вам нужно проявить немного творчества. Я нашел решение, но оно не может быть лучшим. Мое решение выглядит так:
В конструкторе элемента управления для каждого свойства, которое вы хотите установить, вы:
- Сохранить желаемое значение в приватной переменной.
- Присвойте значение переменной свойству.
- Назначьте обработчик событий, который присваивает значение переменной свойству при каждом изменении свойства.
Недостатком является количество кода для каждого свойства. Кроме того, вы не сможете изменить свойства на панели свойств.