J'ai deux objets - un qui contient du code avec déclencher un événement, et un qui contient le gestionnaire pour cet événement. Je ne peux pas "AddHandler" dans la charge du premier objet, car une instance du deuxième objet n'existe pas encore. Quand je lève mon événement, je veux vérifier si une copie d'object2 a été instanciée (facile à faire), et si un gestionnaire a été attaché à l'événement encore (pas sûr comment faire ceci).Déterminez si un événement a déjà été attaché
Je suis également ouvert à une autre recommandation sur la façon de faire à la place. Si je fais mon AddHandler dans Object1.Load, et que Object2 n'existe pas encore, il ne gérera jamais mon événement, même si je le crée plus tard. À l'heure actuelle, dans le code qui déclenche l'événement, je viens de faire un RemoveHandler puis un AddHandler à chaque fois que l'événement est déclenché, et je sais que je vais attacher quand l'objet existe enfin, mais je le sais est une méthode merdique.
J'ai vu un article sur quelque chose de similaire (Determine list of event handlers bound to event), et il me manque peut-être quelque chose dans la traduction, mais je ne peux pas obtenir le code pour travailler sur mon événement personnalisé dans VB.NET.
Pourquoi ne pas utiliser withevents? – chrissie1
Je ne sais pas comment l'utilisation de WithEvents affecterait ma situation - il ne s'agit pas d'un événement qui n'est pas soulevé, ou du fait que le gestionnaire ne fonctionne pas correctement - ils sont tous les deux très bien. C'est juste que je ne peux pas attacher le gestionnaire jusqu'à ce que j'ai une instance de l'objet qui va gérer l'événement, donc je ne suis pas sûr du meilleur endroit pour vérifier cela. – SqlRyan