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

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

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

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

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

«Событие« System.Windows.Forms.Control.Click »может появляться только в левой части + = или - =.»

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

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

Ответы на вопрос(2)

Ваш ответ на вопрос