GIS二次开发实验报告

//组合框的“选择索引更改”事件响应函数,用于在改变组合框所选项时地图范围变为其对应书签所保存的范围

private void cbBookmarkList_SelectedInexChanged(object sender, EventArgs e) {

//访问地图所包含的书签,并获取书签序列

IMapBookmarks bookmarks = axMapControl1.Map as IMapBookmarks; IEnumSpatialBookmark enumSpatialBookmark = bookmarks.Bookmarks;

//对地图所包含的书签进行遍历,获取与组合框所选项名称相符的书签 enumSpatialBookmark.Reset();

ISpatialBookmark spatialBookmark = enumSpatialBookmark.Next(); while (spatialBookmark != null) {

if (cbBookmarkList.SelectedItem.ToString() == spatialBookmark.Name) {

spatialBookmark.ZoomTo((IMap)axMapControl1.ActiveView); axMapControl1.ActiveView.Refresh(); break; }

spatialBookmark = enumSpatialBookmark.Next(); } 6.实验结果如下

4

2 实验二:地图数据组织与访问

2.1 实验目的

? 了解ArcGIS Engine中地图数据的组织结构 ? 掌握ArcGIS Engine地图数据访问方法

2.2 实验内容

? 编写“数据操作”类

? 利用DataGridView控件展示Continents图层的序号和名称字段

2.3 实验步骤与结果

1.添加“空间数据”菜单项,在下拉菜单中添加一个菜单项文本为“访问图层数据”名称为“miAccessData”,用于稍后调用“数据展示台”窗体。

2.新建窗体类,窗体文件命名为“DataBoard.cs”文本属性为“数据展示台”。添加一个文本框,控件名为“tbDataName”,一个数据网格视图,控件名为“dataGridView1”,ReadOnly=true。 如图所示

3.在当前窗体代码中加入以下代码

public DataBoard(String sDataName, DataTable dataTable) {

//初始化窗体及控件

5

InitializeComponent();

//设置文本框中的文本和数据网格视图的数据源 tbDataName.Text = sDataName;

dataGridView1.DataSource = dataTable; }

4.添加类,命名为“Data

>>闁诲繒鍋炲ú鏍閹达箑绀傞柕濠忛檮閻庯拷<<
12@gma联系客服:779662525#qq.com(#替换为@)