我在UWP项目中有几个文本框。如果我按下文本框内的向下键,则光标将跳至文本末尾;除非光标在最前面。如果光标位于文本的前面,则按下将不执行任何操作。即使光标在最前面,有没有办法使光标在按下键时跳到文本的末尾?
我创建了一个新的UWP项目来对此进行测试,并且上述功能是默认功能。
答案 0 :(得分:1)
您可以在 PreviewKeyDown 事件
中使用 SelectionStart 和 SelectionLength 属性。注意: e.Handled必须设置为false
/*Xaml Code*/
<TextBox x:Name="SelectionTextBox" PreviewKeyDown="SelectionTextBox_PreviewKeyDown"/>
//C# code
private void SelectionTextBox_PreviewKeyDown(object sender, KeyRoutedEventArgs e)
{
if (e.Key == Windows.System.VirtualKey.Down)
{
SelectionTextBox.SelectionStart = SelectionTextBox.Text.Length - 1;
SelectionTextBox.SelectionLength = 0;
}
else
{
e.Handled = false;
}
}