Мне нужен способ инициализации свойств моего веб-элемента управления, когда он попадает в область конструктора. Под «инициализацией» я подразумеваю: если мой элемент управления имеет свойство Prop1. Мне нужно присвоить значение Prop1, и мне нужно, чтобы это значение сохранялось в ASPx.
Я попробовал следующее:
- Реализация InitializeNewComponent на моем ControlDesigner: этот метод никогда не вызывается. Кажется, ошибка.
- Реализация инициализации на моем ControlDesigner: этот метод вызывается, но каким-то образом Visual Studio не позволяет мне изменять свойство элемента управления на этом этапе.
- Создайте обработчик для IComponentChangeService.ComponentAdded (который должен вызываться каждый раз при создании любого элемента управления). Этот обработчик никогда не вызывается.
Мой вопрос: как мне инициализировать мои управляющие свойства?
PS: я знаю, как установить свойства моего элемента управления. Я использую следующий код, который отлично работает на смарт-тег:
PropertyDescriptor descriptor = TypeDescriptor.GetProperties(this.Component)["Prop1"];
descriptor.SetValue("Value");
Редактировать
Я забыл упомянуть, что не могу использовать ToolBoxData, потому что мне нужно выполнить обработку, чтобы определить значение свойства