注释
本文档适用于想要使用 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 自动化树概述。
| 控件视图 | 内容视图 |
|---|---|
| 文档 -不同 |
文档 -不同 |
所需的 UI 自动化属性
下表列出了其值或定义与文档控件特别相关的 UI 自动化属性。 有关 UI 自动化属性的详细信息,请参阅 客户端的 UI 自动化属性。
| UI 自动化属性 | 价值 | 注释 |
|---|---|---|
| AutomationIdProperty | 请参阅备注。 | 此属性的值需要在应用程序中的所有控件中唯一。 |
| BoundingRectangleProperty | 请参阅备注。 | 包含整个控件的最外侧矩形。 |
| ClickablePointProperty | 请参阅备注。 | 文档具有可单击点,该点将导致文档容器中某个元素的文档具有焦点。 |
| ControlTypeProperty | 文档 | 对于所有 UI 框架,此值相同。 |
| IsContentElementProperty | 真 实 | 文档控件始终包含在 UI 自动化树的内容视图中。 |
| IsControlElementProperty | 真 实 | 文档控件始终包含在 UI 自动化树的控件视图中。 |
| IsKeyboardFocusableProperty | 请参阅备注。 | 如果控件可以接收键盘焦点,它必须支持此属性。 |
| LabeledByProperty | 请参阅备注。 | 此属性的值应为文档控件的标签。 通常,使用文档的标题。 |
| LocalizedControlTypeProperty | “文档” | 与文档控件类型对应的本地化字符串。 |
| NameProperty | 请参阅备注。 | 文档控制通常从加载来源的文件名中获取其名称。 这通常显示在包含的窗口或框架标题中。 |
必需的 UI 自动化控件模式
下表列出了文档控件支持所需的 UI 自动化控件模式。 有关控件模式的详细信息,请参阅 UI 自动化控件模式概述。
| 控件模式 | 支持 | 注释 |
|---|---|---|
| IScrollProvider | 取决于 | 文档控件可以跨越大于视区跨度。 如果内容可滚动,控件应支持滚动控件模式。 |
| ITextProvider | 必选 | 文档控件可以跨越大于视区跨度。 如果内容可滚动,控件应支持滚动控件模式。 |
| IValueProvider | 从不 | 文档控件不支持此控件模式,因为控件的内容通常跨越多个页面。 UI 自动化客户端应该使用 TextPattern 来获取有关文档的文本信息。 |
所需的 UI 自动化事件
下表列出了所有文档控件支持的 UI 自动化事件。 有关事件的详细信息,请参阅 UI 自动化事件概述。
| UI 自动化事件 | 支持 | 注释 |
|---|---|---|
| AutomationFocusChangedEvent | 必选 | 没有 |
| BoundingRectangleProperty 属性更改事件。 | 必选 | 没有 |
| IsEnabledProperty 属性更改事件。 | 必选 | 没有 |
| IsOffscreenProperty 属性更改事件。 | 必选 | 没有 |
| StructureChangedEvent | 必选 | 没有 |
| HorizontallyScrollableProperty 属性更改事件。 | 必选 | 没有 |
| HorizontalScrollPercentProperty 属性更改事件。 | 必选 | 没有 |
| HorizontalViewSizeProperty 属性更改事件。 | 必选 | 没有 |
| VerticalScrollPercentProperty 属性更改事件。 | 必选 | 没有 |
| VerticallyScrollableProperty 属性更改事件。 | 必选 | 没有 |
| VerticalViewSizeProperty 属性更改事件。 | 必选 | 没有 |
| InvalidatedEvent | 取决于 | 如果控件支持选择控件模式,则它必须支持此事件。 |
| TextSelectionChangedEvent | 必选 | 没有 |
| TextChangedEvent | 必选 | 没有 |
| ValueProperty 属性更改事件。 | 从不 | 没有 |