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


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

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

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

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

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

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

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

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

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

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

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

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

Дерево

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

  • TreeItem (0 или несколько)

    • TreeItem (0 или более)• …

  • ScrollBar (0, 1, 2)

Дерево

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

  • TreeItem (0 или несколько)

    • TreeItem (0 или более)• …

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

  • 0 или более элементов внутри контейнера (элементы могут основываться на элементах управления типа Tree Item, Data Item или элементах управления других типов).

  • Ноль, одна или две полосы прокрутки.

Представление содержимого дерева UI Automation содержит ноль или несколько элементов внутри контейнера (элементы могут основываться на элементах управления типа Tree Item, Data Item или элементах управления других типов).

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

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

Свойство UI Automation

Значение

Примечания

AutomationIdProperty

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

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

BoundingRectangleProperty

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

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

ClickablePointProperty

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

Элементы управления дерева содержат точку, при нажатии на которую дерево или один из элементов дерева в контейнере получит фокус. У вас есть точка для нажатия только для дерева, поэтому если вы нажмете куда-нибудь еще, один из элементов не будет выбран/не получит фокус.

ControlTypeProperty

Дерево

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

IsContentElementProperty

True

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

IsControlElementProperty

True

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

IsKeyboardFocusableProperty

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

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

LabeledByProperty

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

Если элемент управления дерева имеет метку, связанную с ним, это свойство вернет AutomationElement для этой метки. В противном случае, свойство вернет нулевую ссылку (Nothing в Microsoft Visual Basic .NET).

LocalizedControlTypeProperty

"дерево"

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

NameProperty

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

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

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

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

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

Поддержка / значение

Примечания

ISelectionProvider

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

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

CanSelectMultiple

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

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

IsSelectionRequired

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

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

IScrollProvider

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

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

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

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

Событие UI Automation

Поддержка

Примечания

InvalidatedEvent

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

Нет

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

Обязательно

Нет

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

Требуется

Нет

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

Требуется

Нет

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

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

Нет

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

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

Нет

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

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

Нет

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

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

Нет

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

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

Нет

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

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

Нет

AutomationFocusChangedEvent

Обязательно

Нет

StructureChangedEvent

Обязательно

Нет

См. также

Ссылки

Tree

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

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

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