1、Icommand接口 位于systemUI命名空间下,封装常用的操作工具。例如(1)地图交互操作:放大、缩小、选择、查询等(2)直接操作工具,即不用与地图进行交互的工具:另存、全图、添加数据等。
对于第一种工具使用方法:
private IMapControlDefault mapCtl; //需声明全局变量
private void 缩小_Click(object sender, EventArgs e)
{
ICommand commandzoomout = new ControlsMapZoomOutToolClass();
commandzoomout.OnCreate(axMapControl1.Object);
mapCtl.CurrentTool = commandzoomout as ITool;
}
对于第二种工具使用方法:
private void 另存为ToolStripMenuItem_Click(object sender, EventArgs e)
{
ICommand commandzoomsave = new ControlsSaveAsDocCommandClass();
commandzoomsave.OnCreate(axMapControl1.Object);
commandzoomsave.OnClick();
}
OnCreate()方法中传递的hook参数(当前对象引用)成为绑定到这个控件的交互对象,通过OnClick()方法运行。
2、右键菜单ToolStripMenuItem
普通的控件设置右键菜单,只需在其属性中直接绑定就可以,但是对于AE的axTOCControl控件不适