2009-08-03 8 views

Antwort

10

Ein event definiert eine Reihe von Methoden einschließlich "hinzufügen" und "entfernen" (auf die gleiche Weise, dass eine Eigenschaft definiert "get" und "set"). Dies ist effektiv:

obj.add_SomeEvent(handler); 

Intern könnte das Ereignis alles tun; gibt es zwei häufige Fälle:

  • Ereignisse mit einem Delegierten-Feld (einschließlich "Feld-like" events)
  • EventHandlerList Implementierungen

mit einem Delegierten, verwendet es effektiv Delegate.Combine:

handler = Delegate.Combine(handler, value); 

Mit einem EventHandlerList gibt es ein Schlüsselobjekt:

Events.AddHandler(EventKey, value); 
Verwandte Themen