Récupérer les handlers d'un évènement

Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 - 22 mars 2007 à 19:28
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 - 26 mars 2007 à 11:09
Bonjour,
Je cherche à récupérer sous-forme (par exemple, autre solution me va aussi) d'un array de delegate les sub associés à un évènement de ma classe. Est-ce possible ?
En fait j'aimerais pouvoir déclencher l'évènement (simuler RaiseEvent) depuis un code externe à ma classe sans devoir passer par un sub intermédiaire dans ma classe qui lancerait l'évènement car, bien que ça aie l'air ridicule, cela ralentit fortement le traitement.

Merci pour vos infos !

<hr size="2" width="100%" />Julien.

3 réponses

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
23 mars 2007 à 13:09
Bonjour


Si tu bosse en .NET2, regarde dans l'aide MSDN, tu peux faire une gestion personnaliser des events (add, rmv, raiseevents).

En .NET1 :

public sub AddHandler(byval pDelegate as Delegate)

    'Ajout à la liste perso

    AddHendler Me.Event,pDelegate

End Sub

Il est plus facile de batiser quelqu'un que de le convertir.(surtout en programmation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
Julien237 Messages postés 883 Date d'inscription vendredi 3 novembre 2000 Statut Membre Dernière intervention 3 mars 2009 7
23 mars 2007 à 21:34
Oui, le AddHandler, je connais mais c'est plutot la lecture que je voudrais faire.. Tu vois style

Delegate Sub MyEvent(EventArgs...)

Dim EventsSubs as MyEvent()

EventSubs = MyEvent.GetHandlers

For ...
  EventSubs(i).Invoke(...)
Next...

Tu vois ou je veux en viendre ?
Et j'aimerais de cette manière, pouvoir récupérer des handlers qu'un autre programmeur aura ajouté après moi à ma classe...
'Fin c'est peut-être tout simplement pas possible... Merci de ta réponse tout de même...

<hr size="2" width="100%" />Julien.
0
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
26 mars 2007 à 11:09
Bonjour

Alors, tu ne m'a pas compris :
En .NET2, tu peux personnaliser la gestion de tes handlers (regerde la doc MSDN des event)
En .NET1, tu peux utiliser la petite fonction que je t'ai présenté pour remplacer l'usage du AddHandler que VB utilise habituellement, pour l'appeller :
à la place de
Addhandler Obj.evenement,Handler
tu fait
Obj.AddHandler(Handler)

Il est plus facile de batiser quelqu'un que de le convertir.(surtout en programmation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
0
Rejoignez-nous