Управление обработчиками событий | OTUS
Запланируйте обучение с выгодой в Otus!
-15% на все курсы до 27.11 Забрать скидку! →
Выбрать курс

Управление обработчиками событий

В языке программирования C# есть возможность управлять обработчиками событий. Для этого используются специальные акссесоры add/remove. С их помощью вы сможете управлять как добавлением, так и удалением обработчиков. На практике данная функциональность требуется нечасто, но иногда она может пригодиться. Рассмотрим пример:

1-1801-016210.png

Далее происходит разбивка процесса определения события на 2 части. Сначала мы просто определяем переменную, через которую можно вызывать связанные обработчики:

2-1801-dd2cad.png

Во 2-й части процесса следует определить акссесоры add/remove. Вызов аксессора add происходит при добавлении обработчика, а если точнее -- при выполнении операции +=. В данном случае добавляемый обработчик является доступным через ключевое слово value, при этом у нас есть возможность получить информацию об обработчике (к примеру, имя метода посредством value.Method.Name), а также определить некоторую логику. В нашем примере в целях простоты сообщение выводится на консоль:

3-1801-b4ea06.png

Теперь поговорим про блок remove -- его вызов происходит, если надо удалить обработчик. Как и в предыдущем случае, у нас есть возможность задать какую-нибудь дополнительную логику.

4-1801-bafb42.png

Внутри класса вызов события также осуществляется с помощью переменной _notify. Для добавления/удаления обработчиков в программе применяется как раз Notify:

5-1801-97093a.png

Осталось посмотреть на консольный вывод программы:

6-1801-a0ad42.png

По материалам https://metanit.com/sharp/tutorial/.

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться
Популярное
Сегодня тут пусто
Черная пятница в Otus! ⚡️
Скидка 15% на все курсы до 27.11 →