Что такое События в C#?

События-это не просто действия пользователя. Например

  1. Когда вы щелкаете мышью-это события щелчка мыши.
  2. Когда вы нажимаете любую клавишу на клавиатуре – это события нажатия клавиш
  3. Когда вы обновляете свою веб-страницу – это события загрузки страницы
  4. При перемещении курсора мыши — это наведение мыши события и т.д.

Поэтому, когда вы предпринимаете какие-либо действия, такие как нажатие клавиши, движения мыши, щелчки и т. д., возникает событие. Позвольте мне прояснить это подробнее. Например, вы заполнили онлайн-форму и нажмите на кнопку Отправить.

  1. В фоновом button_click()режиме событие возникло.
  2. Это событие вызывает и выполняет связанную функцию Submit_Click().
  3. Эта функция обрабатывает ваш запрос и отправляет информацию о странице в базу данных.

Как события работают с делегатами?

Делегаты используются для ссылки на метод. Событие связывается с обработчиком событий с помощью делегатов. Когда событие возникает, оно посылает сигнал делегатам, и делегаты выполняют соответствующую функцию.

Что такое модель издатель-подписчик?

В любом случае есть две части программы обработки событий. Одна часть является издателем, который содержит определение событий и делегатов, а другая часть-подписчиком, который принимает событие и предоставляет обработчик событий.

  1. Событие создается с помощью ключевого слова event.
  2. Событие не имеет возвращаемого типа и всегда является пустым.
  3. Все события основаны на делегатах.
  4. Все опубликованные события должны иметь объект прослушивания.
  5. Все события должны быть определены, начиная с ключевого слова «On».

Давайте разберемся во всех этих теориях на примере программирования 
Перед просмотром примеров программирования вы должны знать последовательные шаги для управления событиями. 

Шаг 1: Определение делегата 
Шаг 2: Определение события с тем же именем делегатов.
Шаг 3: Определите обработчик событий, которые отвечают при возникновении события.
Шаг 4: Вы должны иметь метод, готовый для делегатов.

Эта программа просто добавляет два числа. Единственное условие — если сумма чисел нечетна, он запускает событие, которое печатает сообщение с помощью делегатов.

1

Смотрите эту фотографию. На коде есть какая-то маркировка. Мы пройдем через маркировку и разберемся в самом процессе.

  1. Созданный Делегат

2. Создано Событие

3. ev_OddNumber() событие будет выполнено, если найдено нечетное число.

4. В классе AddTwoNumbers есть функция void Add(), которая добавляет два числа. Если сумма числа Нечетна, то оно подняло ev_OddNumberсобытие основная функция, это ev_OddNumberобработчик событий вызывает делегат

5. Затем, наконец, делегат выполняет функцию.

Еще больше примеров с событиями у нас сайте: пример 1 пример 2

Обновлено: 12.01.2020 — 10:52

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.