| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Разработка контрола |
| Автор: senalex 5.6.2009, 12:56 |
| Всем привет, пишу контрол, потомок UserControl, на него положил TreeView и открыл доступ через свойство, теперь при использовании своего контрола хочу подписаться на событие дерева и получаю сообщение: Events cannot be set on the object passed to the event binding service because a site associated with the object could not be located. Кто сталкивался? как быть? |
| Автор: senalex 8.6.2009, 06:32 | ||
Подписаться пытаюсь на событие AfterSelect, но пробывал и на другие тоже самое. Вылетает обработанное исключение, т.е. основное сообщение такое: Property value is not valid А при нажатии по кнопке Details выше указанное. |
| Автор: senalex 10.6.2009, 06:39 |
| Выход найден, вот рабочий код: [Description("Объект TreeView")] [DesignerSerializationVisibility(DesignerSerializationVisibility.Content)] [TypeConverter(typeof(TreeView))] [MergableProperty(false)] public TreeView Tree { get { return tree; } set { tree = value; } } public override ISite Site { get { return base.Site; } set { base.Site = value; if (value != null) { INestedContainer nc = (INestedContainer)Site.GetService(typeof(INestedContainer)); if (nc != null) { nc.Add(tree, "Tree"); } } } } |