资源环境信息系统.pptx

  1. 1、本文档共61页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于Visual C#和ArcEngine的二次开发;系统功能需求;一、简单图层控制功能的实现;1 图层属性表的添加和显示;步骤2:实现图层与图层控制菜单间的关联。响应TOCControl控件的OnMouseDown事件,添加相关代码。 //因为程序中用到ILayer和 //IBasicMap 接口,所以需要添加命名空间 ILayer layer = new FeatureLayerClass(); { IBasicMap map = new MapClass(); ? System.Object other = null; System.Object index = null; ; { pt.X = e.x; pt.Y = e.y; this.图层控制菜单.Show(pt); } } ;运行程序显示结果如下: ;步骤3:设计一个属性表窗体。 1添加一个属性表窗体。 ;2 为属性表窗体添加DataGridView控件,并修改控件Anchor属性为〔Top, Bottom, Left, Right〕。;3 为属性表窗体编写相关代码,实现图层属性信息往属性表中的添加。 public partial class 属性表 : Form { private ILayer layer; public 属性表(ILayer lyr) //对属性表窗口进行初始化 { InitializeComponent(); layer = lyr; this.Text = \ + layer.Name + \ 属性表; } ; private void 属性表_Load(object sender, EventArgs e) { try { ITable lyrtable = (ITable)layer; DataTable table = new DataTable(); IField field; { } IQueryFilter queryFilter = new QueryFilterClass(); ICursor cursor = lyrtable.Search(queryFilter, true); IRow row;; while ((row = cursor.NextRow()) != null) { { object ob = row.get_Value(j); values[j] = ob; } } } catch (Exception e1) { MessageBox.Show(无法显示属性表!); this.Close(); } } };由于该段代码中用到了ILayer接口,所以要在属性表.cs开头添加命名空间。同时也用到ITable, IQueryFilter, ICursor, IRow接口,所以要添加命名空间。即添加如下代码: 但此时运行程序会报错:命名空间ESRI.ArcGIS中不存在类型名或命名空间名称Geodatabase〔是缺少程序集引用吗?〕。这时需要在资源管理器中将该程序集添加进来。;;步骤4:建立图层控制菜单与属性表的连接,实现属性表界面的显示。双击图层控制菜单上的“显示属性表〞菜单项,在响应的Click事件中添加如下代码: private void 显示属性表ToolStripMenuItem_Click(object sender, EventArgs e) { 属性表 form = new 属性表(layer)

文档评论(0)

189****5087 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7102116031000022
认证主体仪征市思诚信息技术服务部
IP属地江苏
统一社会信用代码/组织机构代码
92321081MA278RWX8D

1亿VIP精品文档

相关文档