MapControl对应于ArcMap中的数据视图,它封装了Map对象,并提供了额外的属性、事件、方法用于:
- 管理控件的外观、显示属性和地图属性;
- 添加并管理控件中的数据层(data layers);
- 装载Map文档(mxd)到控件中;
- 从其它应用程序拖放数据到控件中;
- 使用鼠标拉绘几何形状并绘制到屏幕显示中。
MapControl实现的常用接口为IMapControlDefault(缺省接口,开发过程中使用该接口可保证总是访问最新版本的MapControl)和IMapControl4。
加载地图
- [1] 无代码,直接利用控件加载
在窗体中添加AxToolbarControl、AxTOCControl和AxMapControl三个控件,有些时候不添加AxLienceControl控件运行会报错,所以也可添加一个Lience控件。
ToolbarControl控件相当于ArcMap中的工具条,axTOCCoontrol控件则相当于ArcMap中左侧的布局视图,axMapControl控件则相当于ArcMap中的数据视图。右键axToolbarControl属性将Genneral选项卡中的Buddy,选择axMapControl1即与当前的axMapControl控件绑定起来,继续选中items,Add所需的工具到工具条中,如下图所示。
同理,将左侧axTOCControl属性中的Buddy绑定axMapControl1。运行程序结果如下:
- [2] 使用LoadMxFile加载
代码如下:
- [2] 使用LoadMxFile加载
System.Windows.Forms.OpenFileDialog openFileDialog1 = new OpenFileDialog()