Bestimmen Sie, ob ein Ereignis noch angehängt wurde

Ich habe zwei Objekte - eines, das Code enthält, der ein Ereignis auslöst, und eines, das den Handler für dieses Ereignis enthält. Ich kann "AddHandler" beim Laden des ersten Objekts nicht verwenden, da eine Instanz des zweiten Objekts noch nicht vorhanden ist. Wenn ich mein Ereignis auslöse, möchte ich überprüfen, ob eine Kopie von object2 instanziiert wurde (einfach) und ob dem Ereignis noch ein Handler zugeordnet wurde (nicht sicher, wie).

Ich bin auch offen für eine andere Empfehlung, wie man das macht. Wenn ich meinen AddHandler in Object1.Load ausführe und Object2 noch nicht vorhanden ist, wird mein Ereignis auch dann nicht behandelt, wenn ich es später erstelle. Momentan habe ich in dem Code, der das Ereignis auslöst, jedes Mal, wenn das Ereignis ausgelöst wird, einen RemoveHandler und dann einen AddHandler ausgeführt, und dann weiß ich, dass ich eine Anlage anfügen werde, wenn das Objekt endlich vorhanden ist, aber ich weiß dies ist eine beschissene Methode.

Ich habe einen Artikel über etwas Ähnliches gesehen (Bestimmen Sie die Liste der an das Ereignis gebundenen Ereignishandler), und vielleicht fehlt etwas in der Übersetzung, aber ich kann den Code nicht für mein benutzerdefiniertes Ereignis in VB.NET verwenden.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage