![]() |
---|
本文档的目标读者是欲使用 System.Windows.Automation 命名空间中定义的托管 UI Automation类的 .NET Framework 开发人员。有关 UI Automation的最新信息,请参见 Windows Automation API: UI Automation(Windows 自动化 API:UI 自动化)。 |
本主题介绍 UI Automation对 TreeItem 控件类型的支持。 在 UI Automation中,控件类型是一组条件,控件必须满足这些条件才能使用 ControlTypeProperty 属性。 这些条件包括 UI Automation树结构的特定准则、UI Automation属性值和控件模式。
TreeItem 控件类型表示树容器中的一个节点。 每个节点可以包含其他节点(称为“子节点”)。 您可以按展开或折叠的方式显示父节点(即包含子节点的节点)。
以下几节定义了 TreeItem 控件类型必需的 UI Automation树结构、属性、控件模式和事件。 UI Automation的要求适用于所有树项控件,无论控件是 Windows Presentation Foundation (WPF)、Win32 还是 Windows Forms。
本主题包括下列各节。
- 必需的 UI 自动化树结构
- 必需的 UI 自动化属性
- 必需的 UI 自动化控件模式
- 必需的 UI 自动化事件
- 相关主题
必需的 UI 自动化树结构
下表描述了与树项控件有关的 UI Automation树的控件视图和内容视图,以及每个视图中可包含的内容。 有关 UI Automation树的更多信息,请参见 UI 自动化树概述。
控件视图 |
内容视图 |
---|---|
TreeItem
|
TreeItem
|
在 UI Automation树的内容视图中,树项控件可以有零个或多个子树项。 如果树项控件具有下面列出的控件模式中所公开内容以外的功能,则说明该控件应当基于 Data Item 控件类型。
折叠的树项将不会显示在控件视图或内容视图中,直到它们被展开且变为可见(即,可以滚入视图)。
控件视图可以包含控件的其他详细信息,包括关联的图像或按钮。 例如,大纲视图中的项可以包含图像以及用于展开或折叠大纲的按钮。 这些详细信息对象不会出现在内容视图中,因为父级树项已显示此类信息。 已滚出屏幕的树项将同时出现在 UI Automation树的控件视图和内容视图中,其 IsOffscreenProperty 应当设置为 true。
必需的 UI 自动化属性
下表列出了值或定义与列表控件密切相关的 UI Automation属性。 有关 UI Automation属性的更多信息,请参见 客户端的 UI 自动化属性。
UI Automation属性 |
值 |
注释 |
---|---|---|
请参见“说明”。 |
此属性的值在应用程序的所有控件中都必须保持唯一。 |
|
请参见“说明”。 |
包含整个控件的最外面的矩形。 |
|
请参见“说明”。 |
此属性必须返回该项的位置,才能使该项更改选择状态或获得焦点。 |
|
TreeItem |
此值对于所有的 UI 框架均相同。 |
|
True |
列表控件始终包括在 UI Automation树的内容视图中。 |
|
True |
列表控件始终包括在 UI Automation树的控件视图中。 |
|
请参见“说明”。 |
此属性设置为指示树项控件何时滚出屏幕。 |
|
请参见“说明”。 |
如果该控件可以接收键盘焦点,则它必须支持此属性。 |
|
请参见“说明”。 |
如果树项控件使用可视化图标来指示这是一个特定类型的对象,则必须支持该属性,而且该属性必须指示此对象的含义。 |
|
Null |
树项控件自行进行标记。 |
|
"树项" |
与 TreeItem 控件类型相对应的本地化字符串。 |
|
请参见“说明”。 |
此属性公开针对每个树项控件显示的文本。 |
必需的 UI 自动化控件模式
下表列出了必须由列表控件支持的 UI Automation控件模式。 有关控件模式的更多信息,请参见 UI 自动化控件模式概述。
控件模式/模式属性 |
支持/值 |
注释 |
---|---|---|
视情况而定 |
如果树项有一个单独的可操作命令,则实现此控件模式。 |
|
是 |
所有的树项都可以展开或折叠。 |
|
Expanded、Collapsed 或 Leaf Node |
当树项无法展开或折叠时,它们将是叶节点。 |
|
视情况而定 |
如果树容器支持 Scroll 控件模式,则实现此控件模式。 |
|
视情况而定 |
如果在用户返回到树容器时,可以保持处于活动状态的选项,则实现此控件模式。 |
|
是 |
此属性将针对容器内的所有项公开同一个容器。 |
|
视情况而定 |
如果树项具有关联的复选框,则实现此控件模式。 |
必需的 UI 自动化事件
下表列出了必须由所有树项控件支持的 UI Automation事件。 有关事件的更多信息,请参见 UI 自动化事件概述。
UI Automation事件 |
支持 |
注释 |
---|---|---|
必需 |
无 |
|
BoundingRectangleProperty property-changed 事件。 |
必需 |
无 |
IsEnabledProperty property-changed 事件。 |
必需 |
无 |
IsOffscreenProperty property-changed 事件。 |
必需 |
无 |
ItemStatusProperty property-changed 事件。 |
视情况而定 |
无 |
NameProperty property-changed 事件。 |
必需 |
无 |
必需 |
无 |
|
ExpandCollapseStateProperty property-changed 事件。 |
必需 |
无 |
视情况而定 |
无 |
|
CurrentViewProperty property-changed 事件。 |
视情况而定 |
无 |
视情况而定 |
无 |
|
视情况而定 |
无 |
|
视情况而定 |
无 |
|
ToggleStateProperty property-changed 事件。 |
视情况而定 |
无 |
ValueProperty property-changed 事件。 |
视情况而定 |
无 |