Einträge im Eventhandler abfragen



  • Hiho zusammen,

    ich habe ein Problem:
    Ich füge meinem Listner bei jedem Seitenaufruf einen neuen EventHandler hinzu. Natürlich rufe ich beim zweiten Click 2 Handler auf, beim dritten 3 usw.

    Ich würde jetzt gerne VOR dem Hinzufügen des neuen Handlers überprüfen ob der nicht schon vorhanden ist.

    this.webBrowser1.Document.Click += new HtmlElementEventHandler(Document_Click);
    

    Weiß jemand wie das geht ?

    Danke
    Aldoron



  • Das kannst du nicht. Du kannst dich aber selber abmelden und wieder anmelden.



  • Aber ich kann ja diesen Code z.B. 5x ausführen

    this.webBrowser1.Document.Click += new HtmlElementEventHandler(Document_Click); 
    this.webBrowser1.Document.Click += new HtmlElementEventHandler(Document_Click); 
    this.webBrowser1.Document.Click += new HtmlElementEventHandler(Document_Click); 
    this.webBrowser1.Document.Click += new HtmlElementEventHandler(Document_Click); 
    this.webBrowser1.Document.Click += new HtmlElementEventHandler(Document_Click);
    

    Bei jedem Click wird der dann 5x aufgerufen. Es muss doch irgendwie möglich sein das zu verhindern...



  • Ja, indem du nur einmal hinzufügst 🙂

    Des musst du manuell mitführen was du hinzugefügt hast und was nicht. Du kannst bei nem Event nicht abfragen was für Eventhandler attached sind.



  • Warum musst Du den überhaupt jedesmal hinzufügen? Mach das einmal beim new, und gut 😉


Anmelden zum Antworten