В моем проекте у меня есть несколько элементов управления, которые отображают набор точек на экране.Я хотел бы предоставить функциональность «выбора лассо» для всех этих элементов управления.Для этого я написал класс под названием «Лассо», который отслеживает движения мыши, отображает лассо, вызывает событие, когда лассо закрыто, и т. Д. Пока все хорошо.Но чтобы использовать лассо, я должен написать такой код:
public partial class MyControl : UserControl {
private Lasso lasso;
public MyControl() {
InitializeComponent();
lasso = new Lasso();
lasso.HookEvents(this);
}
}
Метод "lasso.HookEvents" заботится о подключении лассо к событиям мыши для управления хостом.
Что я хотел бы сделать, так это каким-то образом предоставить людям возможность просто перетаскивать компонент «Лассо» из панели инструментов на свой UserControl или Form во время разработки и не беспокоиться о написании какого-либо кода самостоятельно;лассо должно волшебным образом «просто работать».Есть способ сделать это ?Я пытался расширить свой класс Лассо из Компонента, но я не мог понять, как заставить конструктор автоматически генерировать вызов lasso.HookEvents (this).