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


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

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

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

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

Элементы управления списки являются примерами элементов управления, которые реализуют тип элемента управления ListItem.

Следующие разделы определяют необходимую древовидную структуру UI Automation, свойства, шаблоны управления и события для типа элемента управления ListItem. Требования UI Automation применяются ко всем элементам управления "Список", будь то Windows Presentation Foundation (WPF), Win32 или Windows Forms.

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

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

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

Следующая таблица описывает вид элемента управления и вид содержимого дерева UI Automation, которое соответствует элементам управления ListItem и описывает, что может содержаться в каждом представлении. Дополнительные сведения о дереве UI Automation см. в разделе Общие сведения о дереве модели автоматизации пользовательского интерфейса.

Представление элементов управления

Представление содержимого

ListItem

  • Изображение (0 или более)

  • Text (0 или более)

  • Edit (0 или более)

ListItem

Потомки элемента управления "список" внутри вида содержимого дерева UI Automation всегда должны быть равны "0". Если структура элемента управления такая же, как другие элементы находящиеся под элементом списка, тогда она должна удовлетворять требованиям для типа элемента управления Поддержка автоматизации пользовательского интерфейса для типа элемента управления TreeItem.

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

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

Свойство UI Automation

Значение

Примечания

AutomationIdProperty

См. примечания.

Значение этого свойства должно быть уникальным для каждого элемента управления в приложении.

BoundingRectangleProperty

См. примечания.

Значение этого свойства должно включать область содержимого изображения и текста элемента списка.

ClickablePointProperty

Зависит от конкретного случая

Если элемент управления "Список" имеет выбираемую при нажатии точку (точка, которая может быть нажата, чтобы выделить список), то эта точка должна предоставляться через это свойство. Если элемент управления "Список" полностью закрывается дочерними элементами списка, он будет вызывать NoClickablePointException, чтобы указать, что клиент должен запрашивать элемент внутри элемента управления списка для выбираемой при нажатии точки.

NameProperty

См. примечания.

Значение свойства имени элемента управления "список" берется из текстового содержимого элемента.

LabeledByProperty

См. примечания.

При наличии статической текстовой подписи это свойство должно предоставлять ссылку на этот элемент управления.

ControlTypeProperty

ListItem

Это значение одинаково для всех структур пользовательского интерфейса.

LocalizedControlTypeProperty

"элемент списка"

Локализованная строка, соответствующая типу элемента управления ListItem.

IsContentElementProperty

True

Элемент управления "список" всегда включается в представление элементов управления дерева UI Automation.

IsControlElementProperty

True

Элемент управления списка всегда включается в представление элементов управления дерева UI Automation.

IsKeyboardFocusableProperty

True

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

HelpTextProperty

""

Текст справки для элементов управления списка содержит описание списка параметров, один из которых должен выбрать пользователь. Эта информация обычно совпадает с представляемой в подсказке. Например: "Выберите элемент, чтобы установить разрешение экрана для вашего монитора".

ItemTypeProperty

Зависит от конкретного случая

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

IsOffscreenProperty

Зависит от конкретного случая

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

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

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

Шаблон элемента управления

Поддержка

Примечания

ISelectionItemProvider

Да

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

IScrollItemProvider

Зависит от конкретного случая

Если элемент списка находится внутри контейнера с прокруткой, то этот шаблон элемента управления должен быть реализован.

IToggleProvider

Зависит от конкретного случая

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

IExpandCollapseProvider

Зависит от конкретного случая

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

IValueProvider

Зависит от конкретного случая

Если элемент может быть отредактирован, то этот шаблон элемента управления должен быть реализован. Изменения в элементе списка вызовут изменения значений NameProperty и Value.

IGridItemProvider

Зависит от конкретного случая

Если поддерживается пространственный переход от элемента к элементу внутри контейнера списка и контейнер размещен в строках и столбцах, то должен быть реализован шаблон элемента управления Grid Item.

IInvokeProvider

Зависит от конкретного случая

Если элемент содержит команду, которая может быть выполнена над ним независимо от выбора, то этот шаблон должен быть реализован. Обычно это действие, связанное с двойным щелчком на элементе списка. Примерами могут служить запуск документа из Microsoft Windows Explorer, или воспроизведение музыкальных файлов в Microsoft Windows Media Player.

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

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

Событие UI Automation

Поддержка

Примечания

InvokedEvent

Зависит от конкретного случая

Нет

ElementAddedToSelectionEvent

Обязательно

Нет

ElementRemovedFromSelectionEvent

Обязательно

Нет

ElementSelectedEvent

Обязательно

Нет

Событие, изменяемое свойством BoundingRectangleProperty.

Обязательно

Нет

Событие, изменяемое свойством IsOffscreenProperty.

Требуется

Нет

Событие, изменяемое свойством IsEnabledProperty.

Обязательно

Нет

NameProperty

Обязательно

Нет

Событие, изменяемое свойством ItemStatusProperty.

Зависит от конкретного случая

Нет

Событие, изменяемое свойством ExpandCollapseStateProperty.

Зависит от конкретного случая

Нет

Событие, изменяемое свойством ValueProperty.

Зависит от конкретного случая

Нет

Событие, изменяемое свойством ToggleStateProperty.

Зависит от конкретного случая

Нет

AutomationFocusChangedEvent

Обязательно

Нет

StructureChangedEvent

Обязательно

Нет

См. также

Ссылки

ListItem

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

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

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