Events weiter leiten



  • Hi!

    Ich habe eine eigene Panel-Klasse (erbt von Panel) erstellt die auf ein Klick-Event reagiert. In das Panel werden noch andere Controlls (Member der Panel-Klasse) eingefügt z.B. Label und PictureBox. Wenn ich nun auf eins dieser Controlls klicke bekommt das Panel keine Klick-Event mehr. (Ich muss schon neben die Controlls klicken damit was passiert.) Das Event müsste also an die Parent-Controll weitergeleitet werden.

    Wie ist die allgemeine Vorgehensweise um ein Events weiter zuleiten?

    Ich hab schon einiges probiert. Z.B. das die Controlls auf das Event reagieren und ein neues Klick-Event feuern. Aber:

    Derived classes cannot raise base class events.

    Danke für Ideen und Tipps!



  • Du fängst das Event im Panel und rufst Panel.Onclick auf.

    In der panel Klasse:

    picBox.Click += delegate { this.OnClick(EventArgs.Empty); }; // .NET 2.0 Code
    


  • Danke für den Tip! 😃
    So war auch mein erste Gedanke aber IntelliSense hat mir nur ein paar On...()-Methoden angeziegt (darunter war kein OnClick), so dass ich dachte es gibt kein OnClick(). :p


Anmelden zum Antworten