Начал знакомиться с событиями, но так и не могу понять как они работают(((
Чтобы класс мог породить событие, необходимо подготовить три следующих элемента:
• Класс, предоставляющий данные для события.
• Делегат события.
• Класс, порождающий событие
Событийно-ориентированное программирование, как правило, применяется в трех случаях:
• При построении пользовательских интерфейсов (в том числе графических);
• При создании серверных приложений в случае, если по тем или иным причинам нежелательно порождение обслуживающих процессов;
• При программировании игр, в которых осуществляется управление множеством объектов.
События имеют следующие свойства:
• Издатель определяет момент вызова события, подписчики определяют предпринятое ответное действие.
• У события может быть несколько подписчиков. Подписчик может обрабатывать несколько событий от нескольких издателей.
• События, не имеющие подписчиков, никогда не возникают.
• Обычно события используются для оповещения о действиях
пользователя, таких как нажатия кнопок или выбор меню и их пунктов в графическом пользовательском интерфейсе.
• Если событие имеет несколько подписчиков, то при его возникновении происходит синхронный вызов обработчиков событий.
Советую посмотреть видеоурок Александра Шевчука о событиях, в данном очень подробно рассказывается сами события, обработчики событий, приводятся их примеры из реальной жизни .