工具栏控件类型

本主题提供有关 Microsoft UI 自动化对 ToolBar 控件类型的支持的信息。 工具栏控件使最终用户能够激活应用程序中包含的命令和工具。

以下部分定义工具栏控件类型所需的UI 自动化树结构、属性、控件模式和事件。 UI 自动化要求适用于 UI 框架/平台集成UI 自动化控件类型和控件模式支持的所有工具栏控件。

本主题包含以下各节:

典型树结构

下表描述了与工具栏控件相关的UI 自动化树的典型控件和内容视图,并描述了每个视图中可以包含的内容。 有关 UI 自动化树的详细信息,请参阅 UI 自动化树概述

控件视图 内容视图
  • ToolBar
    • 各种控件(0 个或多个)
  • ToolBar
    • 各种控件(0 个或多个)

 

工具栏控件在其子树中可以包含任何类型的控件。 它们通常包含按钮、组合框和拆分按钮。

相关属性

下表列出了值或定义与 ToolBar 控件类型特别相关的UI 自动化属性。 有关UI 自动化属性的详细信息,请参阅从UI 自动化元素检索属性

UI 自动化属性 说明
UIA_AutomationIdPropertyId 请参阅注释。 此属性的值在UI 自动化树的原始视图中的所有对等元素中必须是唯一的。
UIA_BoundingRectanglePropertyId 请参阅注释。 包含整个控件的最外层矩形。
UIA_ClickablePointPropertyId 请参阅注释。 如果存在边界矩形,则受支持。 如果边界矩形中的每个点都不可单击,并且元素执行专门的命中测试,请重写并提供一个可单击的点。
UIA_ControlTypePropertyId 工具栏 此值对于所有 UI 框架均相同。
UIA_IsContentElementPropertyId TRUE 工具栏控件始终包含在UI 自动化树的内容视图中。
UIA_IsControlElementPropertyId TRUE 工具栏控件始终包含在UI 自动化树的控件视图中。
UIA_IsKeyboardFocusablePropertyId 请参阅注释。 如果该控件可以接收键盘焦点,则它必须支持此属性。
UIA_LabeledByPropertyId Null 工具栏控件从不具有标签。
UIA_LocalizedControlTypePropertyId 请参阅注释。 对应于 ToolBar 控件类型的本地化字符串。 en-US 或英语 (美国) 的默认值为“工具栏”。
UIA_NamePropertyId 依赖的对象 除非在应用程序中使用了多个名称,否则工具栏控件不需要名称。 如果存在多个,则每个都必须具有一个可分辨名称 (,例如“格式设置”或“大纲显示”) 。

 

所需的控件模式

下表列出了工具栏控件需要支持的UI 自动化控件模式。 有关控件模式的详细信息,请参阅 UI Automation Control Patterns Overview

控件模式 支持 说明
IDockProvider 依赖的对象 如果工具栏可以停靠到屏幕的不同部分,则必须支持 Dock 控件模式。
IExpandCollapseProvider 依赖的对象 如果工具栏可以展开和折叠以显示更多项,则必须支持 ExpandCollapse 控件模式。
ITransformProvider 依赖的对象 如果工具栏可以调整大小、旋转或移动,则必须支持 转换 控件模式。

 

必需事件

下表列出了工具栏控件需要支持的UI 自动化事件。 有关事件的详细信息,请参阅 F:System.Windows.Automation.AutomationElementIdentifiers.IsEnabledProperty

UI 自动化事件 说明
UIA_AutomationFocusChangedEventId
UIA_BoundingRectanglePropertyId 属性更改事件。
UIA_ExpandCollapseExpandCollapseStatePropertyId 属性更改事件。 如果控件支持 ExpandCollapse 控件模式,则它必须支持此事件。
UIA_IsEnabledPropertyId 属性更改事件。 如果控件支持 IsEnabled 属性,它必须支持此事件。
UIA_IsOffscreenPropertyId 属性更改事件。 如果控件支持 IsOffscreen 属性,则必须支持此事件。
UIA_StructureChangedEventId

 

概念性

UI 自动化控件类型概述

UI 自动化概述