未检测到UWP Enter键按下



我正在尝试检测我的c#uwp应用程序中的按键,但没有触发enter按键事件。我已经将KeyUp事件添加到主窗口中,除回车键和空格键外,所有键盘键都会触发该事件。关于如何检测回车键有什么想法吗?我添加的用于检测标记中XAML中按键的行是KeyUp="MainPg_KeyUp">

我会使用键盘加速器。例如,我想在用户按下Enter键时调用按钮单击。代码是:

<Button Content="Invoke Me!">
<Button.KeyboardAccelerators>
<KeyboardAccelerator Key="Enter" />
</Button.KeyboardAccelerators>
</Button>

您还可以使用alt、ctrl或shift等修饰符以及so这样的键:

<Button Content="Save">
<Button.KeyboardAccelerators>
<KeyboardAccelerator Key="S" Modifiers="Control" />
</Button.KeyboardAccelerators>
</Button>

您也可以将它们放置在页面级别,但必须在代码后面放置一个事件处理程序。以下是有关键盘加速的更多信息。

KeyDown事件不会触发系统处理的密钥。您将不得不使用PreviewKeyDown事件。

https://learn.microsoft.com/en-us/uwp/api/windows.ui.xaml.uielement.previewkeydown

<TextBox PreviewKeyDown="eventhandler"/>
private void eventhandler(object sender, KeyRoutedEventArgs e)
{
if(e.Key == VirtualKey.Enter)
{
}
}

相关内容

  • 没有找到相关文章

最新更新