关于新建项目
在课程操作之前,需要新建一个 windows 窗体应用程序(.Net Framework) 括号里的内容一定要注意,不要选没有(.Net Framework)的窗体应用。(非VS2019版本应该没有这个问题)
如图:
开始前的准备操作
由于版本不匹配,所以使用过程中会有一些小问题。
- 报错 System.InvalidOperationException:“ArcGIS version not specified. You must call RuntimeManager.Bind before creating any ArcGIS components.” :
缺少engine需要的运行时,需要在Program.cs文件中添加下面这句:
C#代码
.
ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCode.EngineOrDesktop);
具体位置:
- 在新建项目的过程中,可能没有ArcGIS模板(因为版本不匹配,版本匹配的话没这个问题),此时新建一个Windows 窗体应用(.Net Framework)也可以继续操作,如上文所说即可。
- 版本匹配:新建项目过程如下
点击确定后,选择对应引用:
选择好后点击next:
授权时,勾选ArcGIS Engine,然后finish:
然后就可以正常创建一个ArcGIS Engine项目了。
四个控件的一些介绍
MapControl
这个和ArcMap里面的加载地图的窗口是一样的。
ToolbarControl
ArcGIS中的工具条,单独使用没有意义 ,需要在属性中绑定后才可以正常使用。
绑定步骤:
在该控件处右键,选择属性。
在Buddy(这个词有伙伴的意思)中选择,即可绑定其他组件。
也可以在右下角进行选择小扳手出现上面的属性。
为其添加工具
现在的工具栏还没有什么功能,需要在 “属性-items(选项卡)-Add...” 中选择一些内容加进去,双击对应内容即可添加。在原来那个界面出现小图标之后,就说明你添加成功了。
ArcTOCControl
内容列表,使用时也需要绑定其他项目,可以类比工具条的绑定过程。
我的界面大概是这样的,有这些note是因为没有添加小锁。
License Control
这个就是传说中的小锁,也就是许可控制,添加了之后别的功能才可以正常使用。
简单美化一下格局
分割容器控件
更改orientation属性,即可调整其为垂直分割还是水平分割。
将上面的控件分别拖入不同的panel中,调整dock属性,可以让布局稍微好看一点点。
小结
课上讲的内容比这个多,但是还要花点时间复习,所以就大概写了这么多,包括创建项目,简单组件。
组件名 | 简要功能介绍 |
---|---|
MapControl | 类似于ArcMap的地图窗口,用以显示地图内容 |
ToolBarControl | 类似于ArcMap中的工具条,可以自己添加具体工具内容,使用时需要绑定其他控件才可以实现具体的功能。 |
TOCControl | 类似于ArcMap中的内容列表,也需要绑定MapControl才可以正常显示。 |
LicenseControl | 用于许可,不添加的话无法正常使用其他功能,同时控件会有一些note的提示内容。 |
还有一个是分割容器,让其他控件有停靠位置,布局更美观。
软件版本[1]
帮助文档.
我使用的版本是ArcGIS Engine10.2 ,VS2017 ↩︎