Как легко создать метод обработчика событий? - PullRequest
0 голосов
/ 13 марта 2020

Подписаться на событие очень просто: введите +=, нажмите Tab :

enter image description here

Но есть ли простой способ? создать метод обработчика события, когда нет +=? Например, когда событие является параметром метода:

enter image description here

Мой текущий подход очень неэффективен:

  • Посмотрите на сигнатуру метода (используя F12 - go для определения);
  • Тип копирования EventHandler<T>;
  • , введите вручную и вставьте, чтобы создать обработчик события: void foo(object sender, Ctrl + V args).

Я что-то пропустил? Есть ли более быстрый способ создания foo?

PS: я говорю об обработчиках событий, но этот вопрос может быть расширен и для создания обратных вызовов делегатов.

1 Ответ

2 голосов
/ 13 марта 2020

Введите имя метода, который вы хотите сгенерировать (как если бы он уже существовал), затем наведите курсор на имя и нажмите Ctrl+. и выберите «Создать метод ...»:

Screenshot showing refactoring to

EventHandler и EventHandler<T> - это просто типы делегатов - они ничем не отличаются от, например, Func или Action, кроме способа в котором они обычно используются.

...