Laden...

(Event)Bubbeling - gibt eine simple und einfache Möglichkeit oder Alternative?

Erstellt von Frokuss vor 6 Jahren Letzter Beitrag vor 6 Jahren 1.557 Views
F
Frokuss Themenstarter:in
158 Beiträge seit 2015
vor 6 Jahren
(Event)Bubbeling - gibt eine simple und einfache Möglichkeit oder Alternative?

Guten Tag,

gibt es ene simple Möglichkeit ein EventBubbeling durchzuführen, ohne jedem Label Panel und TextBox ein event zuzuweisen?

Mein Problem ist nämlich folgendes:
Ich habe genau eine TextBox und mehrere verschachtelte Panels mit Labels. Zu beginn habe ich den Focus auf ein Label gelegt, damit der Anwender nicht direkt in der TextBox ist. Soweit so gut...
Da ich aber genau eine TextBox habe, kann ich nicht mit dem Event Leave arbeiten... Zumindestens wird das nicht gefeuert, wenn ich irgendwo ausserhalb der TextBox Klicke.

Eingabengesteuert (Enter drücken) kann ich den Fokus auf ein anderes Element setzen... Aber leider nicht mit der Maus. Und dafür suche ich nach einer Lösung. Ich hoffe ihr könnt mir da weiter helfen.

Wünsche euch allen eine Schöne Weihnachtszeit 😃

Besten Gruß Frokuss

1.040 Beiträge seit 2007
vor 6 Jahren

Kannst du bitte nochmal erklären, was du genau machen willst?

F
Frokuss Themenstarter:in
158 Beiträge seit 2015
vor 6 Jahren

Gerne 😃

Ich möchte dass meine einzige TextBox (Such-Feld; einziges Element, welches eine Tastatureingabe akzeptiert) über einen klick verlassen werden kann.

Daher klicke ich auf irgendein Label/Panel, soll der Focus aus der Textbox verschwinden. Also quasi als würde ich TAB auf der Tastatur drücken (bei mehreren TextBoxen).

Ich hoffe es ist dadürch klarer geworden.

Lieben Gruß Frokuss

5.658 Beiträge seit 2006
vor 6 Jahren

Hi Frokuss,

du könntest die ActiveControl-Eigenschaft der Form auf null setzen, wenn außerhalb der Textbox geklickt wurde.

Ich verstehe allerdings nicht, was EventBubbeling bzw. der Titel mit der eigentlichen Frage zu tun hat.

Weeks of programming can save you hours of planning

F
Frokuss Themenstarter:in
158 Beiträge seit 2015
vor 6 Jahren

Vielen Dank für deine Antwort,

das Problem ist, dass ich dann jedem Controll (Panel/Label) ein Click-Event geben muss. Das hätte ich aber gerne vermieden. Daher am liebsten würde ich dem Form das Click-Event geben und dann dadrin, was du gesagt hast.

Lieben Gruß Frokuss

Wünsche euch schöne Weihnachtstage!

16.842 Beiträge seit 2008
vor 6 Jahren

Prinzipiell brauchst Du immer eine Event-Registration.

Ohne das bleibt Dir IIRC eigentlich nur den Weg die Messages des Windows Fensters mit Hilfe eines eigenem MessageFilter zu überwachen.
So machen es zB. auch Logging Components für Forms.

F
Frokuss Themenstarter:in
158 Beiträge seit 2015
vor 6 Jahren

Alles klar. Danke.

Schönes Weihnachtstage!

Frokuss