UI 自动化对 ScrollBar 控件类型的支持

注意注意

本文档的目标读者是欲使用 System.Windows.Automation 命名空间中定义的托管 UI Automation类的 .NET Framework 开发人员。有关 UI Automation的最新信息,请参见 Windows Automation API: UI Automation(Windows 自动化 API:UI 自动化)。

本主题介绍 UI Automation对 ScrollBar 控件类型的支持。 在 UI Automation中,控件类型是一组条件,控件必须满足这些条件才能使用 ControlTypeProperty 属性。 这些条件包括 UI Automation树结构的特定准则、UI Automation属性值和控件模式。

滚动条控件使用户可以滚动窗口或项容器中的内容。 该控件由一组按钮和一个滚动块控件组成。

以下几节定义了 ScrollBar 控件类型必需的 UI Automation树结构、属性、控件模式和事件。 UI Automation的要求适用于所有列表控件,无论控件是 Windows Presentation Foundation (WPF)、Win32 还是 Windows Forms。

本主题包括下列各节。

  • 必需的 UI 自动化树结构
  • 必需的 UI 自动化属性
  • 必需的 UI 自动化控件模式
  • 必需的 UI 自动化事件
  • 相关主题

必需的 UI 自动化树结构

下表描述了与滚动条控件有关的 UI Automation树的控件视图和内容视图,以及每个视图中可包含的内容。 有关 UI Automation树的更多信息,请参见 UI 自动化树概述

控件视图

内容视图

ScrollBar

  • Button(2 个或 4 个)

  • Thumb(0 个或 1 个)

不适用。 滚动条控件不包含内容。

滚动条控件总是具有三到五个子控件。 由于子树有多个按钮控件,您必须为每一项设置特定的 AutomationIdProperty 值,以使测试自动化工具可以发现它们。

必需的 UI 自动化属性

下表列出了值或定义与滚动条控件密切相关的 UI Automation属性。 请注意,滚动条控件从不包含内容;其功能通过 Scroll 控件模式公开,在进行滚动的容器上支持该控件模式。

有关 UI Automation 属性的更多信息,请参见 客户端的 UI 自动化属性

UI Automation属性

注释

AutomationIdProperty

请参见“说明”。

此属性的值在应用程序的所有控件中都必须保持唯一。

BoundingRectangleProperty

请参见“说明”。

包含整个控件的最外面的矩形。

IsKeyboardFocusableProperty

请参见“说明”。

如果该控件可以接收键盘焦点,则它必须支持此属性。

NameProperty

Null

滚动条控件没有内容元素,不必设置 NameProperty。

ClickablePointProperty

不是数字。

滚动条控件没有可单击的点。

LabeledByProperty

Null

滚动条没有标签。

ControlTypeProperty

ScrollBar

此值对于所有框架均相同。 用作滑块的滚动条必须使用 Slider 控件类型。

LocalizedControlTypeProperty

“滚动条”

与 Button 控件类型相对应的本地化字符串。

IsContentElementProperty

False

滚动条控件绝不是内容元素。 如果滚动条是独立控件,则它必须实现 Slider 控件类型并对 ControlType 属性返回 ControlType.Slider。

IsControlElementProperty

True

滚动条必须总是为控件。

OrientationProperty

True

滚动条控件必须总是公开其水平或垂直方向。

必需的 UI 自动化控件模式

下表列出了滚动条控件必须支持的 UI Automation控件模式。 有关控件模式的更多信息,请参见 UI 自动化控件模式概述。 请注意,在滚动条仅用作鼠标操作的控件时,它不支持控件模式。 如果它用作应用程序中的滑块控件,则必须具有 Slider 控件类型。

控件模式

支持

注释

IScrollProvider

从不

滚动条上从不直接支持 Scroll 控件模式。

IRangeValueProvider

视情况而定

仅在具有滚动条的容器上不支持 Scroll 控件模式时,才必须支持此功能。

必需的 UI 自动化事件

下表列出了必须由所有滚动条控件支持的 UI Automation事件。 有关事件的更多信息,请参见 UI 自动化事件概述

UI Automation事件

支持/值

注释

BoundingRectangleProperty property-changed 事件。

必需

IsOffscreenProperty property-changed 事件。

必需

IsEnabledProperty property-changed 事件。

必需

HorizontallyScrollableProperty property-changed 事件。

从不

HorizontalScrollPercentProperty property-changed 事件。

从不

HorizontalViewSizeProperty property-changed 事件。

从不

VerticalScrollPercentProperty property-changed 事件。

从不

VerticallyScrollableProperty property-changed 事件。

从不

VerticalViewSizeProperty property-changed 事件。

从不

ValueProperty property-changed 事件。

视情况而定

AutomationFocusChangedEvent

必需

StructureChangedEvent

必需

请参见

参考

ScrollBar

概念

UI 自动化控件类型概述

UI 自动化概述