UWP - 切换到另一个文本框时,屏幕键盘关闭

时间:2018-02-05 08:25:41

标签: c# uwp

我正在使用我的uwp应用程序遇到一个奇怪的错误(?)。

我有一个包含多个用户输入文本框的页面,每个文本框都将InputScope设置为编号,然后按预期在平板电脑模式下打开键盘。但是,如果您点击下一个框,键盘将关闭,并且需要第二次点击才能打开键盘。如果用户点击标签切换框,也会发生这种情况。

我认为这与前一个文本框触发失去焦点事件之前的Focus()事件触发有关,但我不确定如何覆盖该行为。

如何阻止屏幕键盘关闭,还要确保仍然保持正确的输入镜?

编辑:经过进一步调查,问题似乎几乎是随机的。有时你可以移动到不同的盒子并且它仍然打开,但有时它每次都会关闭键盘。

3 个答案:

答案 0 :(得分:2)

此问题已在2018年4月30日发布的Windows 10版本1803中与其他一些问题一起解决。

答案 1 :(得分:1)

您可以尝试使用InputPane作为屏幕键盘的容器。例如,在窗格尝试隐藏时执行一小段延迟,然后检测再次显示窗格的尝试(并取消挂起的隐藏)。

    myPane = InputPane.GetForCurrentView();
    myPane.Showing += myShowingHandler();
    myPane.Hiding += myHidingHandler();

至少,您可以在窗格上显示一个底层屏幕区域大小,这样您就可以在UI上放置占位符(边距或虚拟网格),以防止它在键盘显示/隐藏时上下跳动。

答案 2 :(得分:0)

我在WP上尝试了你的案例,但我无法重现你的经历: KeyboardWorking

当我点击其他TextBox时,键盘保持打开状态,我可以继续输入。 当我点击某个空格时,键盘会按预期隐藏。

您的设备是否已连接键盘?