当前位置:  开发笔记 > 开发工具 > 正文

关闭Windows的uwp应用程序中的软键盘

如何解决《关闭Windows的uwp应用程序中的软键盘》经验,为你挑选了1个好方法。

我在运行Windows 10的手持设备上运行了一个uwp应用程序.手持设备有一个条形码扫描器,应用程序的所有输入都是用这个来完成的.因此,当用户将焦点移动到任何文本框控件时,我想阻止键盘出现.

在很大程度上,焦点是以编程方式处理的 - 我已经阻止键盘出现在那些实例中PreventKeyboardDisplayOnProgrammaticFocus=True.但是用户确实需要自己移动焦点,当他这样做时我找不到阻止键盘出现的任何方法.

我找到了有关上述程序化焦点的文章,并在用户按下文本框中的键时隐藏键盘 - 并将控件的readonly值设置为true.但这些不适用于这种情况.我希望能够阻止它在这个应用程序中出现.任何人都可以建议吗?



1> Romasz..:

我不确定是否有直接的方法来防止键盘出现.通过订阅InputPane的事件,您可以在显示时隐藏键盘:

InputPane.GetForCurrentView().Showing += (s, e) => (s as InputPane).TryHide();

但这看起来并不好看.因此,我尝试了一种棘手的方法来实现你想要的东西 - 禁用TextBox进行命中测试并在其下使用虚拟控件来设置程序化焦点.正如我测试过它应该工作.样本xaml:


    
        
    
    

而背后的代码:

private void Border_Tapped(object sender, TappedRoutedEventArgs e)
{
    myTextBox.Focus(FocusState.Programmatic);
}

推荐阅读
赛亚兔备_393
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有