实现 UI 自动化 Dock 控件模式

备注

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

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

DockPattern 控件模式用于公开停靠容器内控件的停靠属性。 停靠容器是一个可让你水平或垂直地在彼此之间相对排列子元素的控件。 有关实现此控件模式的控件示例,请参阅 Control Pattern Mapping for UI Automation Clients

Docking container with two docked children. Visual Studio 中的停靠示例,其中“类视图”窗口为 DockPosition.Right,“错误列表”窗口为 DockPosition.Bottom

实现准则和约定

在实现 Dock 控件模式时,请注意以下准则和约定:

  • IDockProvider 不公开停靠容器的任何属性,或者停靠在停靠容器内当前控件旁边的控件的任何属性。

  • 控件根据其当前的 z 顺序彼此相对停靠;控件的 z 顺序位置越高,则其距停靠容器的指定边缘就越远。

  • 如果调整了停靠容器的大小,则容器内的停靠控件将沿着最初的停靠边缘重新定位。 停靠的控件也将调整大小,以根据其 DockPosition的停靠行为来填充容器内的任何空间。 例如,如果指定了 Top ,则控件的左边和右边将会扩展以填充任何可用空间。 如果指定了 Fill ,则控件的所有四个边都将扩展以填充任何可用空间。

  • 在具有多个监视器的系统上,控件应该停靠在当前监视器的左侧或右侧。 如果这不可能,则控件应该停靠在最左侧监视器的左侧或最右侧监视器的右侧。

IDockProvider 必需的成员

实现 IDockProvider 接口需要以下属性和方法。

必需的成员 成员类型 说明
DockPosition 属性
SetDockPosition 方法

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

例外

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

例外类型 条件
InvalidOperationException SetDockPosition

- 当控件无法执行请求的停靠样式时。

请参阅