Я хочу добавить некоторые свойства к некоторым элементам управления в .NET Framework.Например, я хочу добавить список связанных элементов управления, а не содержащиеся элементы управления, которые уже существуют, чтобы создать какие-то элементы управления ссылками.
Я создал небольшой интерфейсный декоратор, реализованный конкретным декораторомчто выходит из класса Control.Здесь я поместил новые свойства и методы для управления ими.
Основная проблема заключается в том, что когда я создаю экземпляр моего украшенного элемента управления, я должен передать в качестве параметра экземпляр базового элемента управления - скажем,Combobox -, и на него ссылаются в одном из этих новых свойств в классе декоратора.
Когда я пытаюсь нарисовать этот компонент, я не могу.А также не уверен, почему.Элемент управления просто не отображается.
Вот код декоратора:
public class ControlDecorator : Control, IDecorator
{
private List<Control> RelatedControls = new List<Control>();
private Control Control;
public ControlDecorator(Control c)
{
this.Control = c;
this.Control.MouseClick += new MouseEventHandler(Control_MouseClick);
}
А вот как я создаю элементы управления:
Control lb = new Label();
lb = new ControlDecorator(lb);
editableArea.Controls.Add(lb);
editableArea.Refresh();