Отключить автоматическое открытие сенсорной клавиатуры (TabTip.exe) в фокусе текстового поля в Windows 10, обновление за апрель 2018 года - PullRequest
0 голосов
/ 28 июня 2018

У меня есть приложение WPF, написанное на .NET 4.6.1, которое используется на планшетах. Когда я фокусирую текстовое поле, виртуальная клавиатура TabTip автоматически вызывается, когда:

  • Включен режим планшета и фокусировка выполняется касанием или стилусом
  • Режим планшета отключен, Show the touch keyboard when not in tablet mode and there's no keyboard attached включен, фокусировка выполняется сенсорным или стилусом
  • режим планшета отключен, Show the touch keyboard when not in tablet mode and there's no keyboard attached настройка отключена и фокусировка выполняется стилусом (без касания)

Мне нужно отключить это поведение.

До сих пор я использовал следующий обходной путь , чтобы отключить автоматический вызов клавиатуры:

class MyTextBox : TextBox
{
    protected override AutomationPeer OnCreateAutomationPeer()
    {
        return new FrameworkElementAutomationPeer(this);
    }
}

Начиная с Windows 10 версии 1803 (обновление за апрель 2018 г.) - возможно, даже после 1709 г. (Fall Creators Update), но я не могу подтвердить это сейчас - это больше не работает, и клавиатура всегда вызывается.

Есть ли способ, как запретить автоматическое отображение TabTip в новейшей Windows 10 в моем приложении?

Хотя это не идеально (это влияет на всю систему), я также попытался отключить Touch Keyboard and Handwriting Panel Service, как описано здесь . Но на 1803 служба продолжает запускаться, как только вызывается клавиатура, например, из кнопки панели задач.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...