获取或设置调用了 Run() 方法的对象,即为调用了实现 ICtrlAction 接口的类中重写 ICtrlAction 接口的 Run() 方法的对象。
命名空间:
SuperMap.Desktop程序集: SuperMap.Desktop.Core (in SuperMap.Desktop.Core)
版本: dll
语法
C# |
---|
IBaseItem Caller { get; set; } |
备注
触发控件事件所执行的内容是通过某个类对象来指定的,该类必须实现 ICtrlAction 接口,当控件事件被触发时,会调用对象的 Run() 方法,该方法也是重写了 ICtrlAction 接口的Run() 方法。因此,该属性值即为对应的控件对象。
示例
CopyC#
// 触发对象示例 if (this.Caller is IButton) // 修改按钮文本 { System.Windows.Forms.CheckState checkState = (this.Caller as IButton).CheckState; (this.Caller as IButton).Text = "修改按钮文本"; } else if (this.Caller is ICheckBox) // 修改复选框的选中状态 { System.Windows.Forms.CheckState checkState = (this.Caller as ICheckBox).CheckState; if (checkState == CheckState.Checked) { (this.Caller as ICheckBox).CheckState = CheckState.Unchecked; } else { (this.Caller as ICheckBox).CheckState = CheckState.Checked; } } else // 其他对象类型 { }