加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 打开停在WPF中的Windows 10触摸键盘

发布时间:2020-12-15 06:20:37 所属栏目:百科 来源:网络整理
导读:我们开始在 Windows 8中创建一个WPF触摸应用程序,最近迁移到Windows 10.我们实现的一个功能是在TextBox接收到焦点时打开Windows键盘.在Windows 8中,可以通过设置注册表设置EdgeTargetDockedState并启动TabTip进程来将键盘停靠在底部. string path = @"C:Pro
我们开始在 Windows 8中创建一个WPF触摸应用程序,最近迁移到Windows 10.我们实现的一个功能是在TextBox接收到焦点时打开Windows键盘.在Windows 8中,可以通过设置注册表设置EdgeTargetDockedState并启动TabTip进程来将键盘停靠在底部.
string path =  @"C:Program FilesCommon FilesMicrosoft SharedinkTabTip.exe";
     var info = new ProcessStartInfo(path);
     info.WindowStyle = ProcessWindowStyle.Maximized;
     var p = new Process();
     p.StartInfo = info;
     p.Start();

然而,Windows 10键盘似乎没有与Windows 8相同的Dock行为.键盘现在覆盖任何最大化的窗口,隐藏任何应用程序的底部.只有未最大化的窗口被调整为适合剩余空间.

我检查了以下链接,但没有找到解决方案:

> https://superuser.com/questions/951841/windows-10-touch-keyboard-doesnt-dock-or-maximize-at-the-bottom-of-the-screen
> http://answers.microsoft.com/en-us/windows/forum/windows_10-desktop/windows-10-touch-keyboard-doesnt-dock/3c253400-568f-4e89-a253-0d7a747b5b63

Windows 10键盘可以通过编程方式停靠在最大化的窗口吗?

解决方法

我开放自己的项目,使所有关于WPT应用程序中的TabTip集成的功能自动化.

你可以在nuget获得它,之后你需要的是一个简单的配置在你的应用程序启动逻辑:

TabTipAutomation.BindTo<TextBox>();

您可以将TabTip自动化逻辑绑定到任何UIElement.当任何这样的元素将获得焦点时,虚拟键盘将打开,当元素失去焦点时,它将关闭.不仅如此,TabTipAutomation会将UIElement(或Window)移动到视图中,这样TabTip就不会阻止对焦元素.

欲了解更多信息,请参阅project site.

澄清:如果你将使用这个包,TabTip将不会被停靠,但你的UI将会在视图中,我猜这是你想要实现的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读