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


Реализация шаблона элемента управления Value модели автоматизации пользовательского интерфейса

ПримечаниеПримечание

Эта документация предназначена для разработчиков на платформе .NET Framework, которым требуется использовать управляемые классы UI Automation, определенные в пространстве имен System.Windows.Automation.Последние сведения о UI Automation см. на веб-странице Windows Automation API: UI Automation.

В этом разделе рассматриваются правила и соглашения, применяемые к реализации интерфейса IValueProvider, включая сведения о событиях и свойствах. Ссылки на дополнительные материалы перечислены в конце раздела.

Шаблон элемента управления ValuePattern используется для поддержки элементов управления, которые имеют встроенное значение, не попадающее в диапазон, и которые могут быть представлены в виде строки. Эта строка может редактироваться в зависимости от элемента управления и его параметров. Примеры элементов управления, реализующих данный шаблон, см. в разделеСопоставление шаблона элемента управления для клиентов автоматизации пользовательского интерфейса.

В этом разделе содержатся следующие подразделы.

  • Правила и соглашения по реализации
  • Обязательные члены интерфейса IValueProvider
  • Исключения
  • Связанные разделы

Правила и соглашения по реализации

При реализации шаблона элемента управления Value следуйте следующим правилам и соглашениям:

  • Доступные для редактирования элементы управления, такие как ListItem и TreeItem, должны поддерживать ValuePattern независимо от текущего режима редактирования. Родительский элемент управления также должен поддерживать ValuePattern, если дочерние элементы являются редактируемыми.

Пример редактируемого элемента списка

Редактируемый элемент списка.

  • Однострочные элементы управления редактированием поддерживают программный доступ к своему содержимому путем реализации IValueProvider. Однако многострочные элементы управления редактирования не реализуют интерфейс IValueProvider. Вместо этого доступ к их содержимому осуществляется посредством реализации интерфейса ITextProvider.

  • Чтобы извлечь текстовое содержимое многострочного элемента управления редактирования, в нем необходимо реализовать интерфейс ITextProvider. Однако интерфейс ITextProvider не поддерживает установку значения элемента управления.

  • Интерфейс IValueProvider не поддерживает извлечение сведений о форматировании или значений подстроки. В таких случаях реализуйте интерфейс ITextProvider.

  • Интерфейс IValueProvider должен реализовываться такими элементами управления, как Палитра из Microsoft Word (см. ниже), в котором поддерживается строковое сопоставление между значением цвета (например "yellow") и эквивалентной внутренней структурой RGB.

Пример сопоставления строки образца цвета

Палитра с отмеченным желтым цветом.

  • Для свойства IsEnabledProperty элемента управления должно быть установлено значение true, для свойства IsReadOnlyProperty — false. Только после этого допускается вызов метода SetValue в этом элементе.

Обязательные члены интерфейса IValueProvider

Для реализации IValueProvider необходимы следующие свойства и методы.

Обязательные члены

Тип члена

Примечания

IsReadOnlyProperty

Свойство

Нет

ValueProperty

Свойство

Нет

SetValue

Метод

Нет

Исключения

Поставщики должны вызывать следующие исключения.

Тип исключения

Атрибут Condition

InvalidOperationException

SetValue

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

ArgumentException

SetValue

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

ElementNotEnabledException

SetValue

  • При попытке использования отключенного элемента управления.

См. также

Задачи

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

ValuePattern Insert Text Sample

Использование кэширования в модели автоматизации пользовательского интерфейса

Основные понятия

Общие сведения о шаблонах элементов управления модели автоматизации пользовательского интерфейса

Шаблоны элементов управления модели автоматизации пользовательского интерфейса для клиентов

Общие сведения о дереве модели автоматизации пользовательского интерфейса