У меня есть расширитель (IExtenderProvider), который расширяет некоторые типы элементов управления с дополнительными свойствами. Для одного из этих свойств у меня есть , написанный UITypeEditor. Пока все работает нормально.UITypeEditor и IExtenderProvider
У расширителя также есть несколько свойств, которые я пытаюсь использовать в качестве своего рода значения по умолчанию для UITypeEditor. То, что я хочу сделать, - это , способное установить свойство на самом расширителе (не расширенные элементы управления), , и когда я открою UITypeEditor для одного из дополнительных свойств на расширенного элемента управления, я хочу установить значение в UITypeEditor до значения свойства на расширителе.
Простой пример: ExtenderProvider имеет свойство DefaultExtendedValue. В форме я устанавливаю значение этого свойства в «My Value». Расширенные элементы управления имеют через провайдера свойство ExtendedValue с UITypeEditor. Когда я открываю редактор для свойства ExtendedValue, значение по умолчанию (начальное) должно быть установлено на «My Value».
Мне кажется, что самое лучшее место, чтобы сделать это было бы UITypeEditor.EditValue, как раз перед вызовом IWindowsFormsEditorService.DropDownControl или .ShowDialog.
Единственная проблема заключается в том, что я не могу (или я не обнаружил, как это сделать) получить поставщика-экстендера в EditValue, чтобы прочитать значение соответствующего свойства и установить его в UITypeEditor. Контекст дает мне расширенный элемент управления , но в этом случае это бесполезно.
Есть ли способ достичь того, что я пытаюсь? Любая помощь ценится!
Благодаря Том
@samjudson: Это не плохая идея, но, к сожалению, это не совсем получить меня там. Мне бы очень хотелось установить это значение по умолчанию для каждого экземпляра поставщика расширителя. (Я мог бы иметь более одного в одной форме с разными значениями для разных групп расширенных элементов управления.)