Wpf 我可以确定按下的是哪个键盘吗?
我的应用程序的用户有一个带有特殊功能键的第二个键盘。不幸的是,这些键被映射到按钮,如F、G、F1等。我想处理PreviewKeyDown并防止这些键盘上的任何键对文本框等正常控件产生影响Wpf 我可以确定按下的是哪个键盘吗?,wpf,keyboard,Wpf,Keyboard,我的应用程序的用户有一个带有特殊功能键的第二个键盘。不幸的是,这些键被映射到按钮,如F、G、F1等。我想处理PreviewKeyDown并防止这些键盘上的任何键对文本框等正常控件产生影响 在WPF中,有没有办法确定是哪个键盘引发了事件 使用System.Windows.Input,您可以通过捕获代码中触发的事件来实现这一点。下面的示例代码显示了如何在Textbox中执行此操作 private void SampleTextbox_PreviewKeyDown(object sender, Key
在WPF中,有没有办法确定是哪个键盘引发了事件 使用System.Windows.Input,您可以通过捕获代码中触发的事件来实现这一点。下面的示例代码显示了如何在Textbox中执行此操作
private void SampleTextbox_PreviewKeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.Delete) // delete key is pressed
{
e.Handled = true; // Ignore key press
}
}
不,不能直接在WPF中进行调试。调试时,您是否查看了可用的属性?事件参数中是否没有任何内容?它没有任何东西可以让你区分这两者吗?嗯,这个问题很好,+1。等我有空的时候,我会再仔细研究一下。我发现:,可以提供一个解决方案。似乎也有一个类似的解决方案。在WPF EventKey链中仍然没有挂钩。谢谢,这种方法的问题是放弃了WPF键盘事件模型,并为这个键盘提供了一个并行实现。是的,我知道,但目前似乎找不到比这个更接近的方法。。