Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Замечание
Эта документация предназначена для разработчиков .NET Framework, которые хотят использовать управляемые классы автоматизации пользовательского интерфейса, определенные в пространстве имен System.Windows.Automation. Последние сведения об автоматизации пользовательского интерфейса см. в разделе API автоматизации Windows: автоматизация пользовательского интерфейса.
Поставщики автоматизации пользовательского интерфейса предоставляют свойства элементов службы автоматизации пользовательского интерфейса Майкрософт. Эти свойства позволяют клиентским приложениям автоматизации пользовательского интерфейса обнаруживать сведения о элементах пользовательского интерфейса, особенно элементах управления, включая статические и динамические данные.
В этом разделе представлен широкий обзор свойств службы автоматизации пользовательского интерфейса Майкрософт. Дополнительные сведения приведены в следующих разделах:
Свойства автоматизации пользовательского интерфейса для клиентов
Server-Side внедрение автоматизации для поставщиков пользовательского интерфейса
Идентификаторы свойств
Каждое свойство определяется числом и именем. Имена свойств используются только для отладки и диагностики. Поставщики используют числовые идентификаторы для идентификации входящих запросов свойств. Однако клиентские приложения используют AutomationProperty, который инкапсулирует число и имя, чтобы определить свойства, которые они хотят извлечь.
AutomationProperty объекты, представляющие определенные свойства, доступны в виде полей в различных классах. По соображениям безопасности поставщики автоматизации пользовательского интерфейса получают эти объекты из отдельного набора классов, содержащихся в Uiautomationtypes.dll.
В следующей таблице свойства распределены по классам, содержащим AutomationPropertyидентификаторы.
Типы свойств | Клиенты получают идентификаторы из | Поставщики получают идентификаторы из |
---|---|---|
Свойства, общие для всех элементов (см. следующие таблицы) | AutomationElement | AutomationElementIdentifiers |
Положение окна докирования | DockPattern | DockPatternIdentifiers |
Состояние элемента, который может разворачиваться и сворачиваться | ExpandCollapsePattern | ExpandCollapsePatternIdentifiers |
Свойства элемента в сетке | GridItemPattern | GridItemPatternIdentifiers |
Свойства сетки | GridPattern | GridPatternIdentifiers |
Текущее и поддерживаемое представление элемента с несколькими представлениями | MultipleViewPattern | MultipleViewPatternIdentifiers |
Свойства элемента, перемещающегося по диапазону значений, например ползунок | RangeValuePattern | RangeValuePatternIdentifiers |
Свойства окна прокрутки | ScrollPattern | ScrollPatternIdentifiers |
Статус и контейнер элемента, который можно выбрать, как в списке | SelectionItemPattern | SelectionItemPatternIdentifiers |
Свойства элемента управления, содержащего элементы выбора | SelectionPattern | SelectionPatternIdentifiers |
Заголовки столбцов и строк элемента в таблице | TableItemPattern | TableItemPatternIdentifiers |
Заголовки столбцов и строк и ориентация таблицы | TablePattern | TablePatternIdentifiers |
Состояние элемента управления переключателем | TogglePattern | TogglePatternIdentifiers |
Возможности элемента, который можно переместить, повернуть или изменить размер | TransformPattern | TransformPatternIdentifiers |
Значение и возможности чтения и записи элемента, который обладает значением. | ValuePattern | ValuePatternIdentifiers |
Возможности и состояние окна | WindowPattern | WindowPatternIdentifiers |
Свойства по категориям
В следующих таблицах классифицируются свойства, идентификаторы которых находятся в AutomationElement и AutomationElementIdentifiers. Эти свойства являются общими для всех элементов управления. Все, кроме некоторых из них, скорее всего, будут статическими в течение всего времени существования приложения поставщика; большинство динамических свойств связаны с шаблонами элементов управления.
В столбце "Доступ к свойствам" перечислены другие методы доступа для каждого свойства в дополнение к GetCurrentPropertyValue и GetCachedPropertyValue. Дополнительные сведения о получении свойств в клиентском приложении см. в разделе "Свойства автоматизации пользовательского интерфейса для клиентов".
Замечание
Для получения конкретных сведений о каждом свойстве перейдите по ссылке в столбце Property Access .
Характеристики отображения
Идентификатор свойства | Доступ к свойствам |
---|---|
BoundingRectangleProperty | BoundingRectangle |
CultureProperty | n/a |
HelpTextProperty | HelpText |
IsOffscreenProperty | IsOffscreen |
OrientationProperty | Orientation |
Тип элемента
Идентификатор свойства | Доступ к свойствам |
---|---|
ControlTypeProperty | ControlType |
IsContentElementProperty | IsContentElement |
IsControlElementProperty | IsControlElement |
ItemTypeProperty | ItemType |
LocalizedControlTypeProperty | LocalizedControlType |
Идентификация
Взаимодействие
Поддержка шаблонов
Разное
Идентификатор свойства | Доступ к свойствам |
---|---|
IsRequiredForFormProperty | IsRequiredForForm |
IsPasswordProperty | IsPassword |
ItemStatusProperty | ItemStatus |
Локализация
Поставщики автоматизации пользовательского интерфейса должны представлять следующие свойства на языке операционной системы:
Свойства и события
Тесно связана с свойствами в UI Automation концепция событий изменения свойств. Для динамических свойств клиентское приложение должно знать, что значение свойства изменилось, чтобы он смог обновить кэш информации или реагировать на новые сведения другим способом.
Поставщики вызывают события, когда что-то в пользовательском интерфейсе изменяется. Например, если флажок установлен или снят, событие изменения свойств вызывается реализацией поставщика шаблона переключения. Поставщики могут вызывать события выборочно, в зависимости от наличия клиентов, прослушивающих события или прослушивающих определенные события.
Не все изменения свойств порождают события; это полностью зависит от реализации поставщика автоматизации пользовательского интерфейса для элемента. Например, стандартные поставщики прокси-серверов для списковых полей не вызывают событие при изменении SelectionProperty. В этом случае, вместо этого, приложение должно прослушивать ElementSelectedEvent.
Клиенты прослушивают события, подписавшись на них. Подписка на обработку событий означает создание методов делегата, которые могут обрабатывать события, а затем передавать эти методы системе автоматизации пользовательского интерфейса вместе с теми событиями, которые будут обрабатываться в этих методах. В частности, для событий изменения свойства клиенты должны реализовать AutomationPropertyChangedEventHandler.
См. также
- Кэширование в клиентах автоматизации пользовательского интерфейса
- Свойства автоматизации пользовательского интерфейса для клиентов
- Server-Side внедрение автоматизации для поставщиков пользовательского интерфейса
- Поиск элемента автоматизации пользовательского интерфейса на основе условия свойства
- Получение свойств от поставщика автоматизации пользовательского интерфейса
- Инициирование событий от поставщика автоматизации пользовательского интерфейса