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