|
|
|
|
Автор:
|
Александр
|
|
Тема:
|
Re[7]: И снова материалы на сайте.................
|
|
Дата:
|
7/18/2001 11:29:00 AM
|
Неплохая у нас конференция получается: в реальном времени:)
> ЭЭЭЭЭ...... Хорошо, а что означает
> public event EventHandler Click;
Объявляем событие. Событие это поле класса. В данно случае это поле имеет имя Click. Тип этого поля: EventHandler. EventHandler это делегат. Вообще делегат это класс, но в терминологии и объекты этого класса тоже называют делегатами. Класс EventHandler определяет форму указателей на методы имеющие сигнатуру: void MethodName(object arg1, Event arg2);
> если перед этим объвлен делегат
> public delegate void EventHandler(object sender, Event e);
А теперь самое главное. События можно реализовать без ключевого слова Event. А Event задает что то типа массива делегатов Click (для упрашения, чтобы не париться и не прописывать ручками). В массиве делегатов хранятся делегаты подписчиков. А когда наступило вермя для события класс делает вот так:
Click(arg1, arg2);
ОП! и для всех подписчиков вызвается их методы, которые сунули этому классу.
Короче если и сейчас не понятно, пишите на e-mail в свободное время напишу sample и распишу все по деталям на "пальцах"!
|
|
|
|