微调器控件类型

本主题提供有关 Microsoft UI 自动化对 Spinner 控件类型的支持的信息。

微调控件用于从项的某个域或数字的某个范围进行选择。

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

本主题包含以下各节:

典型树结构

下表描绘了UI 自动化树的典型控件和内容视图,这些控件和内容视图在支持 RangeValueSelection 控件模式时与微调器控件相关,并描述了每个视图中可以包含的内容。 有关 UI 自动化树的详细信息,请参阅 UI 自动化树概述

RangeValue 控件模式

控件视图 内容视图
  • Spinner
    • Edit(0 个或 1 个)
    • Button(2 个)
  • Spinner

 

Selection 控件模式

控件视图 内容视图
  • Spinner
    • Edit(0 个或 1 个)
    • Button(2 个)
    • 列出项 (0 或更多)
  • Spinner
    • ListItem(0 个或多个)

 

若要确保控件视图子树中的两个按钮可以通过自动测试工具进行区分,请根据需要将 ScrollAmount_SmallIncrementScrollAmount_SmallDecrement 值分配给 AutomationId 属性。 对于某些实现,关联的编辑控件可能是微调器控件的对等方。

相关属性

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

UI 自动化属性 说明
UIA_AutomationIdPropertyId 请参阅注释。 此属性的值在UI 自动化树的原始视图中的所有对等元素中必须是唯一的。
UIA_BoundingRectanglePropertyId 请参阅注释。 包含整个控件的最外层矩形。
UIA_ClickablePointPropertyId 请参阅注释。 微调控件的可单击点将焦点赋予该控件的编辑部分。
UIA_ControlTypePropertyId Spinner 此值对于所有的框架均相同。
UIA_IsContentElementPropertyId TRUE 微调控件必须始终为内容。
UIA_IsControlElementPropertyId TRUE 微调器控件必须始终是控件。
UIA_IsKeyboardFocusablePropertyId 请参阅注释。 如果该控件可以接收键盘焦点,则它必须支持此属性。 微调器控件很少获得焦点,但当它获得焦点时,焦点应保留在微调器控件本身上,而不是子按钮上。 用户应能够使用向上键和向下键执行所有滚动操作。
UIA_LabeledByPropertyId 请参阅注释。 微调控件具有静态文本标签。
UIA_LocalizedControlTypePropertyId 请参阅注释。 对应于 Spinner 控件类型的本地化字符串。 en-US 或英语 (美国) 的默认值为“spinner”。
UIA_NamePropertyId 请参阅注释。 微调控件通常从静态文本标签中获取其名称。

 

所需的控件模式

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

控件模式/模式属性 支持/值 注释
IRangeValueProvider 依赖的对象 跨数值范围的微调器控件可以支持 RangeValue 控件模式。
ISelectionProvider 依赖的对象 具有要选择的项列表的微调器控件必须支持 选择 控件模式。
CanSelectMultiple FALSE 微调控件始终是单选容器。
IValueProvider 依赖的对象 跨一组选项或数字的微调器控件可以支持 Value 控件模式。

 

必需事件

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

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

 

概念性

UI 自动化控件类型概述

UI 自动化概述