欢迎来到天天文库
浏览记录
ID:61442964
大小:427.11 KB
页数:11页
时间:2021-01-31
《GIS二次开发综合实习.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、实验一ArcGISEngine控件的使用一.实验目的使用MapControl、PageLayoutControl、ToolbarControl、TOCControl四个控件建立起基本的桌面GIS应用程序框架。二.实验步骤1.新建项目启动VisualStudio2010,选择“文件
2、新建
3、项目”,在项目类型中选择VisualC#,再选择Windows应用程序模板,输入名称“GISControlDemo”,点击确定。在解决方案管理器中将“Form1.cs”重命名为“GISControlForm.cs”,在设计视图中,选中窗体,将其属性中的“Text”改为“GISControlDemo”。2.
4、添加控件选择工具箱中的“菜单和工具栏
5、MenuStrip”,将其拖入窗体。选择工具箱中的“ArcGISWindowsForms”,将ToolbarControl控件拖入窗体,并将其Dock属性设置为Top。选择工具箱中的“菜单和工具栏
6、StatusStrip”,将其拖入到窗体。选择工具箱中的“容器
7、SplitContainer”容器拖入窗体,并将其Dock属性设置为Fill。选择工具箱中的“ArcGISWindowsForms”,将TOCControl控件拖入SplitContainer控件的Panel1面板,并将其Dock属性设置为Fill。选择工具箱中的“ArcGISWindowsF
8、orms”,将MapControl控件拖入SplitContainer控件的Panel1面板,并将其Dock属性设置为Fill。最后将LicenseControl控件拖入到窗体的任意地方。3.控件绑定通过以上步骤添加的控件还只是单独存在,因此要进行控件绑定。分别右击ToolbarControl、TOCControl控件,选择“属性
9、General”,将Buddy设置为axMapControl1。这样,工具条和图层控件就与地图控件关联了。4.添加工具右击ToolbarControl,选择“属性
10、Items”,点击Add,选择Commands选项卡中的Generic,双击Open、SaveA
11、s、Redo、Undo即可将相应工具添加到工具条。常见的工具有:MapNavigation中的导航工具,MapInquiry中的查询工具,FeatureSelection中的选择工具。5.编译运行按F5即可编译运行程序,至此桌面GIS应用程序框架基本框架已经搭建好了,可以通过工具条的工具打开地图文档,浏览地图了。三.问题及反思若程序抛出InvalidOperationException,打开GISControlForm.cs源代码在构造函数GISControlForm中添加如下代码:ESRI.ArcGIS.RuntimeManager.Bind(ESRI.ArcGIS.ProductCo
12、de.EngineOrDesktop);实验二地图文档和地理数据的操作一.实验目的通过给程序添加菜单实现地图文档的新建、打开、存储以及栅格和矢量数据的添加等功能。二.实验步骤1.添加菜单在设计视图中,单击菜单栏,会出现“请在此处键入”的提示,单击提示就可以键入菜单名称,如“文件”,再单击“文件”,即可输入其下拉子菜单。2.实现相关菜单在解决方案文件上右击,添加引用:ESRI.ArcGIS.DataSourcesRasterESRI.ArcGIS.Geodatabase添加如下命名空间:usingESRI.ArcGIS.Carto;usingESRI.ArcGIS.Controls;usi
13、ngESRI.ArcGIS.DataSourcesRaster;usingESRI.ArcGIS.Geodatabase;在GISControlForm类中添加成员变量:publicstaticIMapDocumentpMapDocument;//需添加命名空间ESRI.ArcGIS.Carto新建地图文档的相关代码如下:privatevoidNewFileToolStripMenuItem_Click(objectsender,EventArgse){SaveFileDialogSaveFileDlg=newSaveFileDialog();SaveFileDlg.Filter="地图
14、文档文件(*.mxd)
15、*.mxd";SaveFileDlg.Title="输入需要新建地图文档的名称";SaveFileDlg.ShowDialog();stringstrDocFile=string.Empty;pMapDocument=newMapDocumentClass();strDocFile=SaveFileDlg.FileName;if(strDocFile==string.Empty)return;pMapDocu
此文档下载收益归作者所有