在Windows 10 Tablet模式下为一个应用程序禁用虚拟键盘

Sir*_*rne 2 c# windows wpf on-screen-keyboard

我们为Touch Devices编写了一个C#/ WPF应用程序,并且已经实现了我们自己的虚拟键盘.自Windows 10周年(或更早)以来,我们在"平板电脑模式"下遇到设备问题.只要输入字段被聚焦,就会打开默认的OSK.

所以问题是:是否可以在我们的应用程序中禁用集成的OSK?如果没有,是否可以通过注册表或设置禁用OSK for JUST OUR APPLICATION?

Sta*_*ker 10

我有完全相同的问题.基于这个线程,我设法通过重写OnCreateAutomationPeer方法禁用自动键盘(TabTip.exe)调用TextBox:

class MyTextBox : TextBox
{
    protected override AutomationPeer OnCreateAutomationPeer()
    {
        return new FrameworkElementAutomationPeer(this);
    }
}
Run Code Online (Sandbox Code Playgroud)