一个简单的C#+arcgis的非数据库版例子

  1. 云栖社区>
  2. 博客>
  3. 正文

一个简单的C#+arcgis的非数据库版例子

殷慈航 2018-04-20 10:15:00 浏览554
展开阅读全文

1.首先新建一个winform的项目。

2.确保C#工具箱包含ESRI的相关控件,如果没有就需要安装SDK。

如果VS中依旧不存在esri控件解决方案如下,以VS2013为例:

(1)打开注册表,定位至HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0,点击10.0在右侧空白处右侧新建--字符串值,名称取”InstallDir“,类型默认为REG_SZ,其数据值即为HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\12.0\InstallDir的值,也就是你VS2013的安装路径。

(2)win7 64位下只要把vs2010安装目录下\Common7\IDE\ItemTemplates\CSharp\ArcGIS文件夹和\Common7\IDE\ProjectTemplates\CSharp\ArcGIS分别对应复制到C:\Users\Administrator\Documents\Visual Studio 2013\Templates\ItemTemplates\Visual C#和C:\Users\Administrator\Documents\Visual Studio 2013\Templates\ProjectTemplates\Visual C#就可以了。

(3)重启VS后还没有那就手动添加一下吧!

3.将VS的相应ToolbarControl(工具控件),AxTOCControl(目录控件),AxMapControl(地图控件)和AxLicenseControl  (许可控件)控件拖到界面形成一下效果:

 

之后修改public Form1()的后台代码如下:

ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
            InitializeComponent();
            string path = @"F:\Chang\mapTest\mapTest\World\";
            string fileName = @"World.mxd";
            //加载图层文件
            axMapControl1.LoadMxFile(path + fileName);
            //设置MapControl显示范围到数据的全局范围
            axMapControl1.Extent = axMapControl1.FullExtent;

 

 运行效果最终形成

 源码下载

网友评论

登录后评论
0/500
评论
殷慈航
+ 关注