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

Поставщик microsoft модель автоматизации пользовательского интерфейса — это программный объект, который предоставляет элемент пользовательского интерфейса приложения, чтобы клиентские приложения со специальными возможностями могли получать сведения об элементе и вызывать его функциональные возможности. Как правило, каждый элемент управления или другой отдельный элемент в пользовательском интерфейсе имеет поставщика.

Корпорация Майкрософт предоставляет поставщик для каждого из стандартных элементов управления, которые предоставляются вместе с Microsoft Win32, Windows Forms и Windows Presentation Foundation (WPF). Это означает, что стандартные элементы управления автоматически предоставляются модель автоматизации пользовательского интерфейса клиентам; вам не нужно реализовывать интерфейсы специальных возможностей для стандартных элементов управления.

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

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

Типы поставщиков

модель автоматизации пользовательского интерфейса поставщики делятся на две категории: поставщики на стороне сервера и поставщики на стороне клиента (или прокси-сервера).

Поставщик на стороне сервера — это объект, например пользовательский элемент управления, который содержит собственную собственную реализацию соответствующих интерфейсов поставщика модель автоматизации пользовательского интерфейса. Поставщик на стороне сервера взаимодействует с клиентскими приложениями через границу процесса, предоставляя свою реализацию интерфейсов поставщика модель автоматизации пользовательского интерфейса ядру, которое обслуживает запросы от клиентов. Дополнительные сведения о поставщиках на стороне сервера см. в разделе Реализация поставщика Server-Side модель автоматизации пользовательского интерфейса.

Поставщик на стороне клиента или прокси-сервер — это объект, реализующий модель автоматизации пользовательского интерфейса интерфейсы поставщика от имени элемента управления не включают собственную полную реализацию поставщика. Без прокси-сервера такой элемент управления в значительной степени непрозрачн для модель автоматизации пользовательского интерфейса, который может предоставлять только основные сведения, доступные из дескриптора окна (HWND), например расположение элемента управления. Как правило, прокси-поставщики взаимодействуют с приложением через границу процесса, отправляя и получая сообщения Windows. Дополнительные сведения см. в статье Реализация поставщика модель автоматизации пользовательского интерфейса Client-Side (прокси-сервера).

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

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

Элементы

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

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

Клиент может видеть дерево модель автоматизации пользовательского интерфейса в трех основных представлениях, как описано в следующей таблице:

Представление Описание
Базовое представление Включает все элементы.
Представление элемента управления Включает элементы, которые являются элементами управления.
Представление содержимого Включает элементы управления, передающие информацию пользователю.

 

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

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

Платформы

Инфраструктура — это компонент, который управляет дочерними элементами управления, проверкой попадания и визуализацией в области экрана. Например, окно Win32, часто называемое HWND, может служить платформой, содержащей несколько модель автоматизации пользовательского интерфейса элементов, таких как строка меню, строка состояния и кнопки.

Контейнерные элементы управления Win32, такие как списки и элементы управления представления в виде дерева, считаются платформами, так как они содержат собственный код для отрисовки дочерних элементов и выполнения проверки попадания в них. В отличие от этого, поле списка WPF не является платформой, так как отрисовка и проверка попадания обрабатываются содержащим окном.

Пользовательский интерфейс в приложении может быть составлен из разных платформ. Например, HWND в приложении может содержать динамический HTML (DHTML), который, в свою очередь, может содержать компонент, например поле со списком в HWND.

Fragments

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

Узлы

Корневой узел каждого фрагмента должен размещаться в элементе, обычно в окне Win32 (HWND). Исключением является рабочий стол, который не размещается ни в каком другом элементе. Узел пользовательского элемента управления — это HWND самого элемента управления, а не окно приложения или любое другое окно, которое может содержать группы элементов управления верхнего уровня.

Узел фрагмента играет важную роль в предоставлении модель автоматизации пользовательского интерфейса служб. Он позволяет навигацию в корень фрагмента и предоставляет некоторые свойства по умолчанию, чтобы настраиваемому поставщику не требовалось реализовывать их.

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

Реализация поставщика Client-Side модель автоматизации пользовательского интерфейса

Реализация поставщика Server-Side модель автоматизации пользовательского интерфейса

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