.Net 域代理层次结构

有四种主要的基本代理,您可以扩展它们来为 .Net 域中的控件创建新的代理。这四种基本代理是对象代理、组件代理、控件代理和带子项目的控件代理。
对象代理
对象代理 .Net 域代理的基本代理。缺省情况下,它映射至 System.Object 类对象。对象代理包含各种基类方法的缺省实现,这里的基类方法例如,GetChildren()、GetMappableChildren() 和 GetRecognitionProperties()。这是一种非 UI 代理。如果控件衍生自 System.Object 类,那么您可以继承对象代理中控件的代理。
组件代理
组件代理是基类,它用于处理衍生自 System.ComponentModel.Component 的对象。此种代理实现了 TestObject 方法,如 GetParent() 和 GetMappableChildren()。
控件代理
缺省情况下,所有衍生自 System.Windows.Forms 类的 .Net 控件均将被映射至控件代理。它同时提供了针对鼠标操作(如单击、拖动和悬浮)的基于坐标的录制和回放支持。此控件代理还支持属性验证点、滚动对象以及视图中的对象相关点。
带子项目的控件代理
带子项目的控件代理实现了容器控件(如表和用户控件)的基本功能。此种代理还支持带部件的控件,这些控件可以单击和寻址,例如,数据网格控件就包含 SubItem 单元格和标题。另外,带子项目的控件代理支持对滚动条 SubItem 的录制和回放,支持控件中的 SubItem 和嵌套的 ScrollablControl 父代中的 SubItem 的滚动。

.Net 控件的代理层次结构

下面的图形是一个 .Net 控件的层次结构的类图:

反馈