Input UWP订阅键盘输入事件/获取隐藏键盘输入

Input UWP订阅键盘输入事件/获取隐藏键盘输入,input,bluetooth,keyboard,win-universal-app,Input,Bluetooth,Keyboard,Win Universal App,我用智能手机连接了一个蓝牙HID设备,该设备将数据作为键盘输入发送(它是一个RFID阅读器)。现在我编写了一个UWP应用程序来使用这些输入。但问题是,如果不关注文本框之类的控件,我就无法获取键盘输入事件 在我的应用程序中,我有一个带有拆分视图(菜单和内容)的根框架,在内容视图中,我有一个新框架,用于加载页面 我尝试了页面的键控事件,但它不能正常工作,因为焦点并不总是在页面上(如果用户触摸导航面板,焦点将切换到主机) 那么,是否可以将eventHandler添加到键盘输入?或者有没有其他方法可以解

我用智能手机连接了一个蓝牙HID设备,该设备将数据作为键盘输入发送(它是一个RFID阅读器)。现在我编写了一个UWP应用程序来使用这些输入。但问题是,如果不关注文本框之类的控件,我就无法获取键盘输入事件

在我的应用程序中,我有一个带有拆分视图(菜单和内容)的根框架,在内容视图中,我有一个新框架,用于加载页面

我尝试了页面的键控事件,但它不能正常工作,因为焦点并不总是在页面上(如果用户触摸导航面板,焦点将切换到主机)

那么,是否可以将eventHandler添加到键盘输入?或者有没有其他方法可以解决这个问题


提前感谢

我也在寻找一种更好的方法,这不是一个完整的答案,因为我仍然需要单击页面内部的某个地方,键盘才能聚焦,但这是一个开始:

<Grid x:Name="PageGrid"
      KeyDown="{x:Bind ViewModel.OnKeyboardNumberInput, Mode=OneWay}"
试试这个:

Windows.UI.Xaml.Window.Current.CoreWindow.CharacterReceived += KeyPress;

这对我很管用。

好主意,但用户在使用导航时,它就不起作用了。因此,pageGrid中的焦点丢失,KeyDown事件不再触发。我还试过你的例子。
Windows.UI.Xaml.Window.Current.CoreWindow.CharacterReceived += KeyPress;