Показать программную панель ввода (SIP) на WP7 программно - PullRequest
5 голосов
/ 15 октября 2010

Как программно отобразить программную панель ввода (SIP) / клавиатуру с помощью кода. (У меня нет текстового поля, в котором я могу указать InputScope).

Ответы [ 2 ]

11 голосов
/ 18 октября 2010

От Джефф Бланкенбургс 31 день работы Windows Phone 7 :

Иногда вы хотите получить ввод с клавиатуры от пользователя, даже если вы не хотите его представлятьс фактическим TextBox.Вероятно, есть много способов обойти это, но я использовал удобный, который легко осуществить.(Если вы ищете причину для этого, подумайте об игре Hangman. Я не хочу, чтобы клавиатура была видна всегда, но я также не хочу, чтобы текстовое поле отображалось на экране.)

Поместите кнопку на свою страницу.

Поместите TextBox на свою страницу, но убедитесь, что он скрыт от глаз пользователя.

Либо поместите его за пределы экрана, сделайте его полностью прозрачным (и на абсолютном фоне), либо каким-либо другим методом, который позволяет добавить его в ваше визуальное дерево, но не позволяет пользователю увидеть его.

Установите обработчик событий на вашей кнопке, который устанавливает Focus () для скрытого текстового поля при его нажатии.

Вот и все!Это позволит вам показывать клавиатуру, чтобы пользователь не увидел текстовое поле. Просматривая текстовое поле.

0 голосов
/ 15 октября 2010

Если вы используете XNA, вы можете использовать Guide.BeginShowKeyboardInput , но я не уверен, что это разрешено, если вы используете silverlight.Но я буду второй комментарий на "почему?"потому что, если у вас нет текстового поля, как вы показываете пользователю, что он печатает?

...