Поделиться через


Рекомендации (планшетный компьютер)

При использовании объекта PenInputPanel следует учитывать несколько рекомендаций.

Предпочитать элемент управления InkEdit

InkEdit является предпочтительным элементом управления, к которому следует присоединить объект PenInputPanel . Элемент управления InkEdit обеспечивает поддержку платформы текстовых служб (TSF).

Отключение режима рукописного ввода для элементов управления InkEdit

При присоединении к элементу управления InkEdit задайте для свойства InkMode элемента управления InkEdit значение InkMode . Если свойству InkMode не задано значение InkMode , элемент управления InkEdit интерпретирует первое касание как росчерк, передает его распознавательу и вставляет текст в элемент управления InkEdit. Так как у вас уже есть объект PenInputPanel , подключенный для приема ввода рукописного ввода, нет необходимости включать элемент управления InkEdit для ввода рукописного ввода.

Использование элементов управления без окон

Когда объект PenInputPanel присоединяется к родительскому окну, которое содержит несколько элементов управления без окон, объект PenInputPanel не знает, как отслеживать курсор по мере перемещения фокуса между дочерними элементами без окон. Рукописные входные данные могут быть отправлены неправильному дочернему элементу при перемещении фокуса от одного элемента управления без окон к другому во время ожидания ввода.

Чтобы использовать объект PenInputPanel в среде без окон, можно использовать следующий метод:

  1. Создайте экземпляр элемента управления TextBox и разместите его над элементом управления без окон.
  2. Вложите объект PenInputPanel в новый элемент управления "Текстовое поле".
  3. Пусть элемент управления "Текстовое поле" собирает распознанный текст из объекта PenInputPanel .
  4. Когда фокус перемещается от элемента управления "Текстовое поле", вызовите метод CommitPendingInput объекта PenInputPanel .
  5. Скопируйте распознанный текст из элемента управления "Текстовое поле" в дочерний элемент без окна.
  6. Отсоедините объект PenInputPanel , задав для его свойства AttachedEditControl (только управляемый код) или Свойства AttachedEditWindow значение NULL.
  7. Уничтожьте элемент управления "Текстовое поле".

Класс PenInputPanel

Microsoft.Ink.PenInputPanel

инфраструктуры текстовых служб (TSF)