namespace ConsoleApplication1
{class Источник
{ public event EventHandler My_event;
public void Создать_событие()
{ Console.WriteLine("Событие создано!!!");
if (My_event!= null) My_event(this,null);
}
}
class Наблюдатель1
{public void OnDo_Event(object sender, EventArgs e)
{Console.WriteLine("ВИЖУ, что произошло событие!!!"); }
}
class Наблюдатель2
{public static void OnDo_Event(object sender, EventArgs e)
{Console.WriteLine("Я тоже ВИЖУ, что произошло событие!!!"); }
}
class Program
{static void Main(string[] args)
{ Источник A = new Источник();
Наблюдатель1 B = new Наблюдатель1();
Наблюдатель1 C = new Наблюдатель1();
A.My_event += new EventHandler(B.OnDo_Event);
A.My_event += new EventHandler(C.OnDo_Event);
A.My_event += new EventHandler(Наблюдатель2.OnDo_Event);
//анонимный обработчик!!! Создание нового метода для обработки события!!!
A.My_event += delegate(object sender, EventArgs e)
{ Console.WriteLine("Я тоже с вами обрабатываю это событие"); };
A.Создать_событие(); Console.ReadKey(); }
}
}