Как узнать, назначен ли конкретный делегат событию?

У меня есть командная кнопка на winform. Итак, если у меня есть что-то вроде:

myButton.Click += MyHandler1;
myButton.Click += MyHandler2;
myButton.Click += MyHandler3;

Как я могу узнать, был ли какой-то конкретный MyHandler уже добавлен к событию Click, чтобы он не добавлялся снова где-то еще в моем коде?

Я читал, как вы можете использовать GetInvocationList () для информации о вашем собственном событии. Но я получаю ошибки при попытке получить элементы для моей командной кнопки с использованием различных комбинаций. Там сказано:

"Событие 'System.Windows.Forms.Control.Click' может появляться только с левой стороны of + = or - =. "

Что мне не хватает?

[Edit] - Я хотел бы выделить этот вопрос , на который указал Ахмад. Это путаница и должно быть проще ИМХО, но похоже, что это может просто работать.

11
задан Community 23 May 2017 в 12:33
поделиться