【问题标题】:Virtual keyboard opens automatically when closing charms/settings关闭超级按钮/设置时虚拟键盘会自动打开
【发布时间】:2016-08-02 20:14:15
【问题描述】:

我的应用程序使用虚拟键盘。打开超级按钮时键盘会隐藏,但关闭超级按钮时它会重新出现。我想控制它是否重新出现。

我的程序有几个包含可编辑文件的文件夹,并且使用虚拟键盘来编辑文件。在超级按钮栏的“设置”选项中,我添加了对显示哪些文件夹/文件的控制。当用户在编辑文件时打开虚拟键盘,然后转到超级按钮栏以禁用该文件所在的文件夹时,就会出现问题。我已经编写了一些代码,以便在发生这种情况时关闭文件,但是一旦用户关闭键盘将自动重新打开的超级按钮......并让用户继续输入和更改数据!他们甚至可以在文件夹被禁用时重新打开文件!

我已经阅读了其他几个类似性质的问题,但没有一个具有魅力栏的附加元素。我认为当我在键盘启动时打开魅力栏时,Windows 8 会记下或标记虚拟键盘以重新打开,并且告诉键盘关闭不会触及该标志(无论如何我不能告诉它关闭已经关闭的时间点)。

如果我能弄清楚如何处理那个假设的标志,或者在键盘重新打开后立即执行一些代码,我就能让它的其余部分工作。有什么建议吗?

更新:

我找到了一种解决方法:所有键盘输入现在都通过一个过滤器检查文件夹/文件是否仍然处于活动状态,否则忽略输入。不完美,但可以满足我的需求。原始问题仍未得到解答。

【问题讨论】:

    标签: c# winrt-xaml virtual-keyboard charms-bar


    【解决方案1】:

    虽然我不知道在超级按钮栏关闭时激活代码的任何方法,但在键盘打开之前关闭键盘就足够了,因此在使用超级按钮栏后不要设置为重新打开。

    这是通过将其添加到初始化程序来实现的:

    Window.Current.Activated += Current_Activated;
    

    然后写方法:

    private void Current_Activated(object sender, Windows.UI.Core.WindowActivatedEventArgs e)
    

    至于触发方法后如何失焦,建议看here

    【讨论】:

      猜你喜欢
      • 2023-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-19
      相关资源
      最近更新 更多