注释
本文档适用于想要使用 System.Windows.Automation 命名空间中定义的托管 UI 自动化类的 .NET Framework 开发人员。 有关 UI 自动化的最新信息,请参阅 Windows 自动化 API:UI 自动化。
本主题介绍实现 ITransformProvider的准则和约定,包括有关属性、方法和事件的信息。 本主题的结尾列出了指向其他参考资料的链接。
控件 TransformPattern 模式用于支持可在二维空间内移动、调整大小或旋转的控件。 有关实现此控件模式的控件示例,请参阅 UI 自动化客户端的控件模式映射。
实施准则和约定
实现转换控件模式时,请注意以下准则和约定:
此控件模式的支持不限于桌面上的对象。 如果子级可以在容器边界内自由移动、调整大小或旋转子级,则容器对象的子级也必须支持此控件模式。
无法移动、调整对象大小或旋转对象,以便其生成的屏幕位置完全超出其容器的坐标,因此无法访问键盘或鼠标(例如,当顶级窗口移出屏幕外或子对象在容器视区边界外移动时)。 在这些情况下,对象将尽可能靠近所请求的屏幕坐标,并将顶部或左侧坐标重写为容器边界内。
对于多监视器系统,如果对象在组合桌面屏幕坐标之外完全移动、调整大小或旋转,该对象将放置在靠近所请求坐标的主监视器上。
所有参数和属性值都是绝对的,独立于区域设置。
ITransformProvider 的必需成员
实现 ITransformProvider需要以下属性和方法。
必需成员 | 成员类型 | 注释 |
---|---|---|
CanMove | 资产 | 没有 |
CanResize | 资产 | 没有 |
CanRotate | 资产 | 没有 |
Move | 方法 | 没有 |
Resize | 方法 | 没有 |
Rotate | 方法 | 没有 |
没有与此控件模式关联的事件。
例外
提供程序必须引发以下异常。
异常类型 | 条件 |
---|---|
InvalidOperationException | Move - 如果 CanMoveProperty 为 false。 |
InvalidOperationException | Resize - 如果 CanResizeProperty 为 false。 |
InvalidOperationException | Rotate - 如果 CanRotateProperty 为 false。 |