Общие сведения о свойствах автоматизированного пользовательского интерфейса
Поставщики Microsoft UI Automation предоставляют свойства для элементов пользовательского интерфейса. Свойства позволяют клиентским приложениям получать сведения об элементах управления.
модель автоматизации пользовательского интерфейса предоставляет два различных типа свойств: свойства элемента автоматизации и свойства шаблона элемента управления. Свойства элемента автоматизации состоят из общего набора свойств, таких как Name, AcceleratorKey и ClassName, которые предоставляются всеми элементами модель автоматизации пользовательского интерфейса независимо от типа элемента управления. Большинство свойств элемента автоматизации являются статическими значениями.
Свойства шаблона элемента управления — это свойства, предоставляемые элементом управления, поддерживающим определенный шаблон элемента управления. Каждый шаблон элемента управления имеет соответствующий набор свойств шаблона элемента управления, которые элемент управления должен предоставлять. Например, элемент управления, поддерживающий шаблон элемента управления Grid , предоставляет свойства ColumnCount и RowCount. Большинство свойств шаблона элемента управления — это динамические значения.
Эта тема описана в следующих разделах.
Идентификаторы свойств
Каждое свойство определяется числовым значением PROPERTYID, называемым идентификатором свойства (ID). Поставщики и клиенты используют числовые идентификаторы в вызовах методов, таких как IRawElementProviderAdviseEvents::AdviseEventAdded и IUIAutomationElement::GetCachedPropertyValue для идентификации запросов свойств. Подробное описание каждого идентификатора свойства модель автоматизации пользовательского интерфейса, включая тип данных и значение по умолчанию каждого свойства, см. в разделе "Идентификаторы свойств".
Значения свойств
Все свойства доступны только для чтения, хотя некоторые из них можно изменить с помощью методов, которые работают над элементом управления, например IDockProvider::SetDockPosition (provider) или IUIAutomationDockPattern::SetDockPosition (клиент).
Сведения о получении значений свойств см. в разделе "Извлечение свойств из элементов модель автоматизации пользовательского интерфейса".
Свойства и события
Тесно связанное со свойствами в UI Automation — это концепция событий изменения свойств. Для динамических свойств клиентское приложение должно знать, что значение свойства изменилось, чтобы он смог обновить кэш информации или отреагировать на новые сведения другим способом. Клиенты могут зарегистрироваться для прослушивания событий изменения любого свойства.
Поставщики вызывают события, когда что-то в пользовательском интерфейсе изменяется. Например, если флажок установлен или снят, событие изменения свойства вызывается реализацией поставщика шаблона управления Toggle. Поставщики могут вызывать события выборочно, в зависимости от наличия клиентов, прослушивающих события или прослушивающих определенные события.
Не все изменения свойств порождают события; это полностью зависит от реализации поставщика автоматизации пользовательского интерфейса для элемента. Например, стандартные поставщики прокси для списков не вызывают событие изменения свойства при изменении свойства Selection. В этом случае приложение должно прослушивать событие, возникающее при изменении выделения (UIA_SelectionItem_ElementSelectedEventId).
Клиенты прослушивают события, подписываясь на них, как описано в разделе Подписка на события автоматизации пользовательского интерфейса. Для событий изменения свойств клиенты должны реализовать IUIAutomationPropertyChangedEventHandler и передать интерфейс в IUIAutomation::AddPropertyChangedEventHandler или IUIAutomation::AddPropertyChangedEventHandlerNativeArray.
Связанные темы
-
Справочные материалы
-
Концептуальный
-
Обзор шаблонов управления в автоматизации пользовательского интерфейса
-
Общие сведения о типах элементов управления автоматизации пользовательского интерфейса
-
Общие сведения о событиях модели автоматизации пользовательского интерфейса