Возможно ли в С# показывать, скрывать и манипулировать экранной клавиатурой Windows 8?

Я делаю приложение WPF, которое будет использоваться в киоске без аппаратной клавиатуры. В настоящее время мы используем стороннюю экранную клавиатуру, но версия для Windows 8 намного лучше, и мы думаем перейти на нее.

Итак, мой вопрос заключается в том, можно ли просто показать/скрыть его, а также показать только числовую версию с помощью С#.

Спасибо! Дэйвид


person David    schedule 28.01.2013    source источник


Ответы (2)


Из этого источника :

Прямого способа программно управлять сенсорной клавиатурой нет. Требование, чтобы пользователь устанавливал фокус, а не программу, является преднамеренным проектным решением для предотвращения оттока пользовательского интерфейса.

Дополнительные сведения см. в разделе Input Hosting Manager и Touch Keyboard. о том, как и почему это работает. Раздел Вызов, управляемый пользователем этот документ объясняет конкретное поведение, о котором вы спрашиваете.

Но как только пользователь прикоснется к элементу управления вводом, автоматически отобразится виртуальная клавиатура (без необходимости дополнительного кодирования).

Наконец, чтобы ответить на ваш вопрос о цифровой версии клавиатуры, вы можете предложить другую раскладку клавиатуры, используя InputScope в текстовом поле. Различные области ввода перечислены здесь, но одним из них является "Число".

person Jennifer Marsman - MSFT    schedule 29.01.2013

Я опубликовал пример того, как активировать сенсорную клавиатуру в приложениях WPF, когда пользователь щелкает текстовое поле, здесь:

http://code.msdn.microsoft.com/Enabling-Windows-8-Touch-7fb4e6de

Я работал над этим образцом много месяцев и рад, наконец, поделиться им с нашим сообществом. Пожалуйста, дайте мне знать, если есть какие-либо вопросы, предложения, проблемы и т. д. в образце панели вопросов и ответов.

Также обратите внимание, что, хотя я и демонстрирую, как «показать» клавиатуру, я не уверен, как программно отключить ее на этом этапе, поэтому важно протестировать любую реальную реализацию, чтобы убедиться, что она удобна. Например, некоторые элементы управления, такие как Button, будут скрывать клавиатуру, когда они получают фокус от TextBox, а некоторые, такие как Checkbox, — нет, и я демонстрирую это в своем примере.

person Dmitry Lyalin    schedule 13.12.2013