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

Примечание

Эта документация предназначена для разработчиков .NET Framework, желающих использовать управляемые классы автоматизации пользовательского интерфейса, определенные в пространстве имен System.Windows.Automation. Последние сведения об автоматизации пользовательского интерфейса см. в статье API автоматизации Windows. Автоматизация пользовательского интерфейса.

В этом разделе содержатся сведения о поддержке модель автоматизации пользовательского интерфейса типа элемента управления "Дерево". В модель автоматизации пользовательского интерфейса тип элемента управления — это набор условий, которые элемент управления должен соответствовать для использования ControlTypeProperty свойства. Условия включают конкретные рекомендации по структуре дерева модель автоматизации пользовательского интерфейса, значениям свойств модель автоматизации пользовательского интерфейса и шаблонам элементов управления.

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

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

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

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

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

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

    • TreeItem (0 или более)
  • ScrollBar (0, 1, 2)
декомпозиции

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

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

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

  • ноль или более элементов в контейнере (элементы могут основываться на типе элемента управления TreeItem, DataItem или другом типе элемента управления);

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

Представление содержимого дерева модель автоматизации пользовательского интерфейса состоит из нуля или множества элементов в контейнере (элементы могут быть основаны на элементе дерева, элементе данных или другом типе элемента управления).

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

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

Свойство модели автоматизации пользовательского интерфейса Значение Примечания.
AutomationIdProperty См. примечания. Значение этого свойства должно быть уникальным среди всех элементов управления в приложении.
BoundingRectangleProperty См. примечания. Внешний прямоугольник, содержащий весь элемент управления.
ClickablePointProperty См. примечания. Элементы управления "Дерево" имеют активную точку, при нажатии на которую дерево или один из элементов контейнера дерева получит фокус. Вы получаете активную точку для дерева только в том случае, если щелчок где-либо не приводит к выбору одного из элементов или получению им фокуса.
ControlTypeProperty декомпозиции Это значение является одинаковым для всех инфраструктур пользовательского интерфейса.
IsContentElementProperty Истина Элемент управления "Дерево" всегда включается в представление содержимого дерева модель автоматизации пользовательского интерфейса.
IsControlElementProperty Истина Элемент управления "Дерево" всегда включается в представление элемента управления дерева модель автоматизации пользовательского интерфейса.
IsKeyboardFocusableProperty См. примечания. Если элемент управления может получать фокус клавиатуры, он должен поддерживать это свойство.
LabeledByProperty См. примечания. Если элемент управления "Дерево" имеет связанную с ним метку, это свойство возвратит AutomationElement для этой метки. В противном случае свойство вернет пустую ссылку (Nothing в Microsoft Visual Basic .NET).
LocalizedControlTypeProperty "дерево" Локализованная строка, соответствующая типу элемента управления List.
NameProperty См. примечания. Значение свойства имени элемента управления "Дерево" обычно берется из текста метки этого элемента управления. Если текстовая метка не предусмотрена, разработчик приложения должен предоставить значение для этого свойства.

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

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

Шаблон элемента управления/свойство шаблона Поддержка/значение Примечания.
ISelectionProvider Зависит Элементы управления "Дерево", содержащие набор выбираемых элементов, должны реализовывать этот шаблон элемента управления. Этот шаблон элемента управления не нужно реализовывать, если при выборе элемента пользователю не передаются полезные сведения.
CanSelectMultiple См. примечания. Реализуйте это свойство, если элемент управления "Дерево" поддерживает выбор нескольких элементов (большинство элементов управления дерева не поддерживает выбор нескольких элементов).
IsSelectionRequired См. примечания. Значение этого свойства предоставляется, если необходимо выбрать элемент управления.
IScrollProvider Зависит Реализуйте этот шаблон элемента управления, если содержимое контейнера дерева можно прокручивать.

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

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

событие модель автоматизации пользовательского интерфейса Поддержка Примечания.
InvalidatedEvent Зависит нет
Событие изменения свойстваBoundingRectangleProperty Обязательное поле нет
Событие изменения свойстваIsOffscreenProperty Обязательное поле нет
Событие изменения свойстваIsEnabledProperty Обязательное поле нет
Событие изменения свойстваHorizontallyScrollableProperty Зависит нет
Событие изменения свойстваHorizontalScrollPercentProperty Зависит нет
Событие изменения свойстваHorizontalViewSizeProperty Зависит нет
Событие изменения свойстваVerticalScrollPercentProperty Зависит нет
Событие изменения свойстваVerticallyScrollableProperty Зависит нет
Событие изменения свойстваVerticalViewSizeProperty Зависит нет
AutomationFocusChangedEvent Обязательное поле нет
StructureChangedEvent Обязательное поле нет

См. также