Unter UWP Universal Windows Platform Anwendungen wird bei
Änderungen in Textbox oder Eingabefelder der Event _TextChanged immer bei jeder
Tasteneingabe ausgelöst.
In Windows Desktop Anwendungen war das bisher nur nach
Abschluss der gesamten Eingabe mit Enter oder Tabulator.
Aufgabe:
Wie kann man Textänderungen in UWP per Enter-Taste
erkennen?
Lösung:
Hierzu muss man den KeyDown Event einbauen und diesen
nach der Enter-Taste untersuchen
Textbox Eingabe bei Eingabe-Taste oder Enter Taste
private async void tbxFolder_KeyDown(object sender, KeyRoutedEventArgs e)
{
if (e.Key ==
Windows.System.VirtualKey.Enter )
{
await clsSys.show_Message("TextChanged changed by
enter");
}
}
|
Falsch: Hier ändert sich der Text, sobald man einen Buchstabe
eingibt.
private async void tbxFolder_TextChanged(object sender, TextChangedEventArgs e)
{
await clsSys.show_Message("tbxFolder_TextChanged");
//fp_set_storageFolder_by_Text();
//fp_load();
}
private async void tbxFolder_TextChanging(TextBox sender,
TextBoxTextChangingEventArgs args)
{
await clsSys.show_Message("tbxFolder_TextChanged");
}
|
In XAML den
KeyDown Event in das Control einbinden
<TextBox x:Name="tbxFolder" Grid.Column="1" VerticalAlignment="Center" VerticalContentAlignment="Center" KeyDown="tbxFolder_KeyDown"
></TextBox>
|
Text tutorial
https://www.youtube.com/watch?v=LKTSYidTUzI&feature=youtu.be