2009-08-03 8 views

Odpowiedz

10

An event definiuje zestaw metod, w tym "dodaj" i "usuń" (w ten sam sposób, w jaki właściwość definiuje "get" i "ustaw"). w tym celu:

obj.add_SomeEvent(handler); 

Wewnętrznie, wydarzenie może zrobić wszystko; tam są 2 wspólne przypadki:

  • wydarzenia z pola delegata (w tym "Pole-like" wydarzeń)
  • EventHandlerList realizacje

z delegatem, skutecznie wykorzystuje Delegate.Combine:

handler = Delegate.Combine(handler, value); 

W przypadku obiektu EventHandlerList znajduje się obiekt klucza:

Events.AddHandler(EventKey, value);