Я знаю, что когда я подкласс элемент управления у меня есть выбор переопределения события или подписавшись на него:Переопределение события элемента управления из вспомогательного класса
public class myPanel : Panel
{
public myPanel()
{
this.Paint += myPanel_Paint;
}
void myPanel_Paint(object sender, PaintEventArgs e)
{
//
}
protected override void OnPaint(PaintEventArgs e)
{
base.OnPaint(e);
}
}
Мой вопрос заключается в не о подклассах, но о создании класс-помощник, к которому может быть зарегистрирован обычный экземпляр управления. Теперь я могу подписаться на его события:
class DrawCtl
{
public Control CTL { get; set;}
public DrawCtl(Control Ctl)
{
CTL = Ctl;
CTL.MouseMove += CTL_MouseMove;
}
void CTL_MouseMove(object sender, MouseEventArgs e)
{
//
}
То, что я хотел бы знать: Является ли также override
событие элемента управления от вспомогательного класса?
Я не уверен, что понимаю это. Вы хотите переопределить член события, например MouseMove, в переменной CTL? Чего вы пытаетесь достичь? Вы хотите изменить добавление/удаление частей события? – Bedford
Можете ли вы сказать мне, что функция «OnPaint» является «защищенной» или нет? обычно этот метод «защищен» ... –
@Mehdi: Я думаю, это ответ, и это «нет». – TaW