Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Язык C

События в C#: Обработка пользовательских действий и системных уведомлений

Что такое события

События — это действия пользователя (нажатия клавиш, клики мыши, перемещения курсора) или системные уведомления. Приложения должны реагировать на события в момент их возникновения. Например, прерывания. События используются для межпроцессного взаимодействия.

Использование делегатов с событиями

События объявляются и инициируются (raise) в классе и связываются с обработчиками событий с помощью делегатов в том же или в другом классе. Класс, содержащий событие, публикует его и называется издателем (publisher). Класс, который принимает событие, называется подписчиком (subscriber). События реализуют модель издатель-подписчик.

Объявление событий

Для объявления события внутри класса сначала нужно объявить тип делегата для этого события:

public delegate string BoilerLogHandler(string str);

Затем объявите само событие с помощью ключевого слова event:

event BoilerLogHandler BoilerEventLog;

Этот код определяет делегат BoilerLogHandler и событие BoilerEventLog, которое вызывает делегат при срабатывании.

Пример

Live Demo
using System;
namespace SampleApp {
    public delegate string MyDel(string str);
    class EventProgram {
        event MyDel MyEvent;
        public EventProgram() {
            this.MyEvent += new MyDel(this.WelcomeUser);
        }
        public string WelcomeUser(string username) {
            return "Welcome " + username;
        }
        static void Main(string[] args) {
            EventProgram obj1 = new EventProgram();
            string result = obj1.MyEvent("Tutorials Point");
            Console.WriteLine(result);
        }
    }
}

Результат выполнения:

Welcome Tutorials Point

Язык C

  1. Классы и объекты в C#: Фундаменты надёжного ООП
  2. Модификаторы доступа в C#: public, private, protected, internal и другие
  3. Ключевое слово static в C#: статические переменные, методы и классы
  4. Абстрактные классы и методы в C#: практическое руководство
  5. Вложенные классы в C#: определение, использование и наследование
  6. Частичные классы и методы в C#: понимание и применение
  7. Sealed-классы и sealed-методы в C#: когда использовать, примеры и повышение безопасности кода
  8. Полиморфизм в C++: практическое руководство
  9. Абстракция данных в C++: разделение интерфейса и реализации
  10. Инкапсуляция данных в C++: защита вашего кода