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

备注

本文档适用于想要使用 System.Windows.Automation 命名空间中定义的托管 UI 自动化类的 .NET Framework 开发人员。 有关 UI 自动化的最新信息,请参阅 Windows 自动化 API:UI 自动化

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

用作图标、信息性图形和图表的图像控件将支持图像控件类型。 用作背景或水印图像的控件将不支持图像控件类型。

以下几节定义图像控件类型必需的 UI 自动化树结构、属性、控件模式和事件。 UI 自动化要求适用于所有图像控件,无论 Windows Presentation Foundation (WPF)、Win32 还是 Windows 窗体。

必需的 UI 自动化树结构

下表描述与图像控件有关的 UI 自动化树的控件视图和内容视图,以及每个视图中可包含的内容。 有关 UI 自动化树的详细信息,请参阅 UI 自动化树概述

控件视图 内容视图
映像 图像(取决于图像是否包含信息(基于 IsContentElement 属性的值))

必需的 UI 自动化属性

下表列出了值或定义与图像控件类型密切相关的 UI 自动化属性。 有关 UI 自动化属性的详细信息,请参阅客户端的 UI 自动化属性

UI 自动化属性 说明
AutomationIdProperty 请参阅注释。 此属性的值在应用程序的所有控件中都必须保持唯一。
BoundingRectangleProperty 请参阅注释。 包含整个控件的最外层矩形。
ClickablePointProperty 请参阅注释。 图像控件的可单击点必须是图像控件边界矩形内的点。
IsKeyboardFocusableProperty 请参阅注释。 如果该控件可以接收键盘焦点,则它必须支持此属性。
NameProperty 请参阅注释。 包含信息的所有图像控件都必须公开名称属性。 以编程方式访问此信息需要提供与图形等效的文字。 如果图像控件仅仅是装饰性的,它必须仅显示在 UI 自动化树的控件视图中,且不需要名称。 UI 框架必须支持图像上的 ALT 或替代文本属性,这些属性可以从其框架内进行设置。 此属性将映射到 UI 自动化名称属性。
LabeledByProperty 请参阅注释。 如果存在静态文本标签,则此属性必须公开对该控件的引用。
ControlTypeProperty 映像 此值对于所有 UI 框架均相同。
LocalizedControlTypeProperty “图像” 与图像控件类型相对应的已本地化字符串。
IsContentElementProperty 请参阅注释。 当其包含尚未公开给最终用户的有意义信息时,图像控件必须包括在 UI 自动化树的内容视图中。
IsControlElementProperty 正确 图像控件始终包括在 UI 自动化树的控件视图中。
HelpTextProperty 请参阅注释。 帮助文本属性公开了描述控件的实际可视外观(例如,带有白色 X 的红色方框)或与图像相关的其他工具提示信息的已本地化字符串。

在需要较长的说明来传达有关图像控件的详细信息时,必须支持此属性。 例如,复杂的图表或关系图。 此属性将映射到 HTML LongDesc 标记和可缩放的向量图形 (SVG) Desc 标记。 使用图像控件的开发人员必须支持允许在控件上设置直观描述的属性。 此属性必须映射到 UI 自动化 VisualDescription 属性。
ItemStatusProperty 请参阅注释。 如果图像控件表示有关屏幕上某个特定项的状态信息,则该项应包含该控件。 当图像包含在某个项中时,该项必须支持状态属性,并在状态更改时引发相应的通知。

如果图像是独立的控件并将传达状态,则必须支持此属性。

必需的 UI 自动化控件模式

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

控件模式 支持 说明
IGridItemProvider 依赖的对象 如果该控件位于网格容器内,则图像控件将支持“网格项”模式。
ITableItemProvider 依赖的对象 如果该控件位于具有标头控件的容器内,则图像控件将支持“表项”模式。
IInvokeProvider 从不 如果图像控件包含可单击的图像,则该控件应支持一种支持“调用”模式的控件类型(例如,按钮控件类型)。
ISelectionItemProvider 从不 图像控件不应支持“选择项”模式。

必需的 UI 自动化事件

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

UI 自动化事件 支持 说明
InvokedEvent 从不
ElementAddedToSelectionEvent 从不
ElementRemovedFromSelectionEvent 从不
ElementSelectedEvent 从不
BoundingRectangleProperty 属性更改事件。 必需
IsOffscreenProperty 属性更改事件。 必需
IsEnabledProperty 属性更改事件。 必需
NameProperty 属性更改事件。 必需
AutomationFocusChangedEvent 必须
StructureChangedEvent 必须

请参阅