EventHandler 2 le retour

#19   1/18/2010 9:07 AM

Afin de conclure sur le sujet des EventHandler

Voici la version formatée et testée du code de Vincent voir le commentaire du post précédent.

EventHandler handler = queryControl1.CompletedHandler; 

foreach (EventInfo eventInfo in MdfAPIClient.GetType().GetEvents())

      {

Delegate del =

Delegate.CreateDelegate(eventInfo.EventHandlerType, queryControl1, handler.Method); 

      eventInfo.AddEventHandler(MdfAPIClient, del);

      }

Evidemment c’est beaucoup plus lisible et c’est bien sur la meilleure façon de faire :)

Cela peux même tenir en une ligne si on veux :

MdfAPIClient.GetType().GetEvents().ToList().ForEach(evnt => evnt.AddEventHandler(MdfAPIClient, Delegate.CreateDelegate(evnt.EventHandlerType, queryControl1, ((EventHandler)queryControl1.CompletedHandler).Method)));

Categories : Code
Tags : C#

Commentaires

Créer un commentaire

Back to List