Обнаружьте, что экранная клавиатура была отображена на Windows Phone 7

Простой вопрос: Как я обнаруживаю, что экранная клавиатура была отображена на Windows Mobile 7? Существует ли событие, которого я могу добавить слушателя?

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

Править:

Комментарий ниже указывает более ясно, что я пытаюсь сделать: Мне вводили текстовое поле, и поскольку пользователь вводит в него, выпадающее автоматическое заполнение появляется ниже его (как Google, предлагают). По умолчанию активное управление (текстовое поле) прокручивает в представление при фокусировании, и экранная клавиатура непосредственно ниже его. Экранная клавиатура появляется перед моим выпадающим автоматическим заполнением - что я хочу сделать, заставляют экран прокрутить немного далее, таким образом, существует некоторая комната для моего выпадающего, которое покажут.

В руководстве по проектированию UI Windows Phone говорится: "Когда клавиатура развертывается, приложение должно прокрутить, чтобы гарантировать, что активные средства редактирования и каре в поле зрения". Это происходит прекрасное, это - просто неактивное выпадающее, скрыт позади экранной клавиатуры.

В инструкциях также говорится, что приложение может принять решение показать экранную клавиатуру и может также принять решение закрыть ее.

В данный момент я застреваю, и я не думаю (на основе моего исследования и ответов на этот вопрос), что возможно обнаружить, что экранная клавиатура была отображена. Я перемещаю свое расследование, чтобы видеть, возможно ли определить "видимую область" страницы (ширина и высота в пикселях, например), и объединить это с onfocus для текстового поля... не уверенного, если это окажется плодотворным все же.

13
задан skaffman 6 May 2010 в 12:48
поделиться

3 ответа

Определение отображения виртуальной клавиатуры не будет возможно в 7.0, как подтвердил представитель Microsoft Питер Торр на форуме WP7 на MSDN.

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

8
ответ дан 2 December 2019 в 00:45
поделиться

Вы можете прослушивать события TextBox.GotFocus и TextBox.LostFocus , чтобы определить, когда текстовое поле в вашем приложении приобретает и теряет фокус. .

4
ответ дан 2 December 2019 в 00:45
поделиться

Если редактируемый элемент получает фокус, то инфраструктура автоматически прокручивает этот элемент в поле зрения. Так что вам действительно не нужно ничего делать.

1
ответ дан 2 December 2019 в 00:45
поделиться