赞
踩
ArcEngine二次开发需要安装ArcGIS Engine SDK和 ArcGIS Engine Runtime。
运行ArcEngine二次开发的程序需要 ArcGIS Engine Runtime环境。
具体的安装就不一一写了,本文所使用的环境是ae10.2+vs2012。
安装完成后,在vs2012中新建 “Windows 窗体应用程序”,在左侧工具栏中可以看到ae相关控件。
开发环境准备好后,就可以进行二次开发了。
本文主要介绍ae框架控件,在ae中,ToolbarControl 、TOCControl 和MapControl 称为框架控件。所谓框架控件,就是该控件起到构建GIS 应用程序框架的作用。其中ToolbarControl 和TOCControl这两个控件需要指定一个实现了IActiveView接口类的“伙伴控件”协同工作,例如MapControl控件。
实施步骤:
1、新建 Windows 窗体应用程序。
2、将ToolbarControl、TOCControl、MapControl、LicenseControl控件拖入窗体。
3、将ToolbarControl、TOCControl的伙伴控件设置成刚放入的MapControl。
4、在ToolbarControl中放入工具。
5、在程序窗口初始化之前,加入:ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
详细说明:
1、不侮辱大家智商了。
2、将ToolbarControl、TOCControl、MapControl、LicenseControl控件拖入窗体。
这里说下四个控件的作用:
ToolbarControl:存放工具的控件,工具比如:放大地图、缩小地图等。
TOCControl:对图层数据进行相关管理、操作的控件。
MapControl:通俗的说就是展示数据的窗口。
LicenseControl:授权控件,每个ae程序都必须放入一个。放进去就不用管了。
如图:
3、将ToolbarControl、TOCControl的伙伴控件设置成刚放入的MapControl。
以TOCControl为例,在TOCControl上点击右键,选择“属性”,在Buddy下拉框中选择刚放入的MapControl。
4、在ToolbarControl中放入工具。
在ToolbarControl控件上点击右键,设置好Buddy后,选择Item标签,点击Add按钮,会弹出一个新窗口,这个新窗口中包含了很多ae定义的工具,如果希望自定义工具,可以自己通过实现Ibasecommand完成。双击新窗口中的工具,即可添加到ToolbarControl中。这里添加了:Generic——Add Data… 工具。
5、在应用程序入口加入ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
也就是授权,否则会出现:“ArcGIS version not specified. You must call RuntimeManager.Bind before creating any ArcGIS components.”报错。
运行程序,可以使用刚添加的工具,打开数据,并展示在MapControl中。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。