实现 UI 自动化 MultipleView 控件模式

注意注意

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

本主题介绍实现 IMultipleViewProvider 的准则和约定,其中包括有关事件和属性的信息。 本主题的结尾列出了指向其他参考资料的链接。

MultipleViewPattern 控件模式用于支持控件,控件提供了同一组信息或子控件的多个表示形式,并且可以在这些表示形式之间进行切换。

可以提供多个视图的控件示例包括列表视图(以缩略图、平铺、图标或详细信息显示其内容)、Microsoft Excel 图表(饼图、折线图、柱状图和带有公式的单元格值)、Microsoft Word 文档(普通、Web 版式、打印版式、阅读版式和大纲)、Microsoft Outlook 日历(年、月、周、日)和 Microsoft Windows Media Player 外观。 支持的视图由控件开发人员决定,并且特定于每个控件。

本主题包括下列各节。

  • 实现准则和约定
  • IMultipleViewProvider 必需的成员
  • 异常
  • 相关主题

实现准则和约定

实现多视图控件模式时,请注意以下准则和约定:

  • 如果管理当前视图的容器与提供当前视图的控件不同,还应该在该容器上实现 IMultipleViewProvider。 例如,Windows 资源管理器中包含一个 List 控件,用于表示当前文件夹的内容,而该控件的视图从 Windows 资源管理器应用程序中进行管理。

  • 不会将可对其内容进行排序的控件视为支持多个视图。

  • 视图的集合必须在所有实例中都相同。

  • 视图名称必须适合在“文本到语音”、盲文和其他可读应用程序中使用。

IMultipleViewProvider 必需的成员

实现 IMultipleViewProvider 需要以下属性和方法。

必需的成员

成员类型

注释

CurrentView

Property

GetSupportedViews

方法

GetViewName

方法

SetCurrentView

方法

没有与此控件模式关联的事件。

异常

提供程序必须引发以下异常。

异常类型

Condition

ArgumentException

当调用 SetCurrentViewGetViewName 时使用的参数不是受支持的视图集合的成员时。

请参见

任务

在 UI 自动化提供程序中支持控件模式

在 UI 自动化中使用缓存

概念

UI 自动化控件模式概述

客户端的 UI 自动化控件模式

UI 自动化树概述