问题描述
我曾尝试通过Dependency Service使用“ KeyboardDeliveryInterceptor”类,但由于它禁用了整个键盘,因此无法获得结果。
“ KeyboardDeliveryInterceptor”的参考:Disable keyboard interaction with UWP app。
解决方法
为Xamarin.forms uwp桌面应用程序禁用特定的硬件键盘键(例如Home和End键)
根据您的要求,您可以处理当前内容的PreviewKeyDown
,然后确定可以禁用Home键按下的{kbd> Home 键设置e.Handled = true
。
class KBDInterceptorimplement : IKBDInterceptor
{
public void DisableTabKey()
{
Window.Current.Content.PreviewKeyDown += Content_PreviewKeyDown;
}
private void Content_PreviewKeyDown(object sender,KeyRoutedEventArgs e)
{
e.Handled = e.Key == VirtualKey.Home ? true : false;
}
}