Events
-
Hallo,
wenn ich in eine Textbox ein Zeichen eingebe dann betrifft das ja mehrere Ereignisse. z.B. das textchanged und das KeyPress Event. Welches dieser Ereignisse wird denn zuerst aufgerufen ? Gibt es da eine Priorität ?
-
Hallo blurry,
in dem Fall wird zuerst das KeyPress-Ereignis ausgelöst und zuletzt dann das TextChanged.
Im KeyPress kann man ja noch z.B. den Tastendruck verwerfen oder aber ein anderes Zeichen stattdessen zurückgeben, während alle Changed-Ereignisse nur reine Benachrichtigungen (Notify-Events) sind (die erst nach der eigentlichen Aktion ausgelöst werden).
-
ok danke Th69.
private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { textBox1.Text = "KeyPress"; } private void textBox1_TextChanged(object sender, EventArgs e) { textBox1.Text = "TextChanged"; }
-
was mich jetzt wundert warum das Textchanged Event nicht mehr aufgerufen wird ?
Wenn ich einen kleinBuchstaben eingebe tut sich in der Textbox gar nix.private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if ((int)e.KeyChar > 96 && (int)e.KeyChar < 123) e.Handled = true; }
-
Th69 schrieb:
Hallo blurry,
während alle Changed-Ereignisse nur reine Benachrichtigungen (Notify-Events) sind (die erst nach der eigentlichen Aktion ausgelöst werden).aso das keypress Event informiert das changedevent dass e.handled also das ereignis schon behandelt wurde
-
Hallo blurry,
sorry, daß ich jetzt erst wieder antworte.
Ja, genau das "e.Handled = true" meinte ich mit "Tastendruck verwerfen".