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


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

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

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

Поставщики автоматизированного пользовательского интерфейса предоставляют свойства элементов Microsoft UI Automation. Эти свойства позволяют приложениям клиента автоматизированного пользовательского интерфейса получать сведения о частях user interface (UI), особенно элементах управления, в том числе статические и динамических данные.

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

  • Идентификаторы свойств
  • Свойства, упорядоченные по категориям
  • Локализация
  • Свойства и события
  • Связанные разделы

В этом разделе приведен широкий обзор свойств Microsoft UI Automation. Более конкретные сведения дается в следующих разделах:

Идентификаторы свойств

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

Объекты AutomationProperty, представляющие конкретные свойства, доступны в качестве полей различных классов. По соображениям безопасности поставщики автоматизированного пользовательского интерфейса получают эти объекты из набора отдельных классов, содержащихся в Uiautomationtypes.dll.

В следующей таблице свойства распределены по классам, содержащим AutomationProperty IDs.

Типы свойств

Клиенты получают идентификаторы из

Поставщики получают идентификаторы из

Свойства, общие для всех элементов (см. следующие таблицы)

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

Свойства, упорядоченные по категориям

В следующей таблице перечислены свойства, у которых идентификаторы IDs находятся в AutomationElement и AutomationElementIdentifiers. Эти свойства являются общими для всех элементов управления. Все из них, за небольшим исключением, вероятно будут статическими во время существования приложения поставщика; большинство динамических свойств связаны с шаблоном элемента управления.

В столбце Доступ к свойствам перечислены все другие методы доступа для каждого свойства в дополнение к GetCurrentPropertyValue и GetCachedPropertyValue. Дополнительные сведения о получении свойств в клиентском приложении см. в разделе Свойства автоматизации пользовательского интерфейса для клиентов.

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

Для получения подробных сведений о каждом свойстве воспользуйтесь ссылкой в столбце Доступ к свойству.

Характеристики отображения

Идентификатор свойства

Доступ к свойству

BoundingRectangleProperty

BoundingRectangle

CultureProperty

нет

HelpTextProperty

HelpText

IsOffscreenProperty

IsOffscreen

OrientationProperty

Orientation

Тип элемента

Идентификатор свойства

Доступ к свойству

ControlTypeProperty

ControlType

IsContentElementProperty

IsContentElement

IsControlElementProperty

IsControlElement

ItemTypeProperty

ItemType

LocalizedControlTypeProperty

LocalizedControlType

Идентификация

Идентификатор свойства

Доступ к свойству

AutomationIdProperty

AutomationId

ClassNameProperty

ClassName

FrameworkIdProperty

FrameworkId

LabeledByProperty

LabeledBy

NameProperty

Name

ProcessIdProperty

ProcessId

RuntimeIdProperty

GetRuntimeId

NativeWindowHandleProperty

NativeWindowHandle

Взаимодействие

Идентификатор свойства

Доступ к свойству

AcceleratorKeyProperty

AcceleratorKey

AccessKeyProperty

AccessKey

ClickablePointProperty

GetClickablePoint

HasKeyboardFocusProperty

HasKeyboardFocus

IsEnabledProperty

IsEnabled

IsKeyboardFocusableProperty

IsKeyboardFocusable

Поддержка шаблонов

Идентификатор свойства

Доступ к свойству

IsDockPatternAvailableProperty

GetSupportedPatterns

IsExpandCollapsePatternAvailableProperty

GetSupportedPatterns

IsGridItemPatternAvailableProperty

GetSupportedPatterns

IsGridPatternAvailableProperty

GetSupportedPatterns

IsInvokePatternAvailableProperty

GetSupportedPatterns

IsMultipleViewPatternAvailableProperty

GetSupportedPatterns

IsRangeValuePatternAvailableProperty

GetSupportedPatterns

IsScrollItemPatternAvailableProperty

GetSupportedPatterns

IsScrollPatternAvailableProperty

GetSupportedPatterns

IsSelectionItemPatternAvailableProperty

GetSupportedPatterns

IsSelectionPatternAvailableProperty

GetSupportedPatterns

IsTableItemPatternAvailableProperty

GetSupportedPatterns

IsTablePatternAvailableProperty

GetSupportedPatterns

IsTextPatternAvailableProperty

GetSupportedPatterns

IsTogglePatternAvailableProperty

GetSupportedPatterns

IsTransformPatternAvailableProperty

GetSupportedPatterns

IsValuePatternAvailableProperty

GetSupportedPatterns

IsWindowPatternAvailableProperty

GetSupportedPatterns

Прочее

Идентификатор свойства

Доступ к свойству

IsRequiredForFormProperty

IsRequiredForForm

IsPasswordProperty

IsPassword

ItemStatusProperty

ItemStatus

Локализация

Поставщики UI Automation должны представить следующие свойства в языке операционной системы:

Свойства и события

Тесная связь со свойствами в UI Automation является основным понятием событий изменения свойств. Для динамических свойств клиентскому приложению требуется способ для определения того, что значение свойства было изменено, чтобы приложение могло обновить свой кэш данных или отреагировать на новые сведения каким-либо другим способом.

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

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

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

См. также

Задачи

Нахождение Элемента Автоматизации Пользовательского Интерфейса в Зависимости от Состояния Свойства

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

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

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

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

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

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