对矢量图层的字段:进行增加、删除和查找及读取相应字段的属性值,鹰眼实现


// 添加字段private void button5_Click(object sender, EventArgs e){IFeatureLayer myLayer = axMapControl1.Map.get_Layer(0) as IFeatureLayer;IFeatureClass myClass = myLayer.FeatureClass;IFieldEdit field = new FieldClass();field.Name_2 = "wwx";field.Type_2 = esriFieldType.esriFieldTypeString;field.Length_2 = 10;myClass.AddField(field as IField);MessageBox.Show("添加字段完成!");}// 删除字段private void button6_Click(object sender, EventArgs e){IFeatureLayer myLayer = axMapControl1.Map.get_Layer(0) as IFeatureLayer;IFeatureClass myClass = myLayer.FeatureClass;IFields fds = myClass.Fields;IField fd = fds.get_Field(4);myClass.DeleteField(fd);MessageBox.Show("删除字段完成!");}// 字段查找private void button2_Click(object sender, EventArgs e){IFeatureLayer myLayer = axMapControl1.Map.get_Layer(0) as IFeatureLayer;IFeatureClass myClass = myLayer.FeatureClass;int index = myClass.FindField("KIND");MessageBox.Show(index.ToString());}// 读取属性值private void button1_Click(object sender, EventArgs e){IFeatureLayer myLayer = axMapControl1.Map.get_Layer(0) as IFeatureLayer;IFeatureClass myClass = myLayer.FeatureClass;IFeature fea = myClass.GetFeature(6);int index = myClass.FindField("NAME");string name = Convert.ToString(fea.get_Value(index));//byte[] temp = Encoding.GetEncoding("ISO8859-1").GetBytes(name);// byte[] temp = Encoding.GetEncoding("GbK").GetBytes(name);// 这里读取shp文件出现了中文乱码,不知道怎么回事  //name = Encoding.Default.GetString(temp);MessageBox.Show(name);}

鹰眼实现代码:


        private void axMapControl1_OnExtentUpdated(object sender, IMapControlEvents2_OnExtentUpdatedEvent e){IEnvelope pEnv;pEnv = e.newEnvelope as IEnvelope;IGraphicsContainer graphicscontainer;IActiveView activewer;graphicscontainer = axMapControl2.Map as IGraphicsContainer;activewer = graphicscontainer as IActiveView;graphicscontainer.DeleteAllElements();IElement plement;plement = new RectangleElementClass();plement.Geometry = pEnv;IRgbColor rgbcol = new RgbColorClass();rgbcol.RGB = 255;rgbcol.Transparency = 255;ILineSymbol poutline = new SimpleLineSymbolClass();poutline.Width = 1;poutline.Color = rgbcol;IRgbColor pcolor = new RgbColorClass();pcolor.RGB = 255;pcolor.Transparency = 0;IFillSymbol fillsym = new SimpleFillSymbolClass();fillsym.Color = pcolor;fillsym.Outline = poutline;IFillShapeElement pfillshapeelement;pfillshapeelement = plement as IFillShapeElement;pfillshapeelement.Symbol = fillsym;plement = pfillshapeelement as IElement;graphicscontainer.AddElement(plement, 0);activewer.PartialRefresh(esriViewDrawPhase.esriViewGraphics, null, null);}

ArcGis Engine二次开发入门(1)相关推荐

  1. 【ArcGIS Engine二次开发】入门基础(2):ArcGIS开发方式(VBA、DLL、Add-in、Engine)对比

    文章目录 2.1 使用VBA进行桌面软件开发 2.1.1 VBA开发方式 2.1.1 VBA代码的安全性 2.2 使用DLL进行桌面软件开发 2.2.1 DLL开发方式 2.2.2 DLL功能的应用部 ...

  2. 【ArcGIS Engine二次开发】入门基础(1):ArcGIS Engine简介及开发环境搭建

    文章目录 ArcGIS Engine概述 ArcGIS Engine与ArcObjects的关系 ArcGIS Engine下载及安装 ArcGIS Engine概述 ArcGIS Engine简介 ...

  3. 利用Arcgis Engine 二次开发的使用和总结

    Arcgis Engine 初体验 先放一张第一版系统的图,由于公司机密不能提供源码,但是各个小功能提供源码,为需要的同仁提供些许帮助. 接下来进入正题,将逐一展示利用Arcgis Engine开发的 ...

  4. 【转载】利用ArcGIS Engine 二次开发的使用和总结

    文章目录 ArcGIS Engine 初体验 一.较完全编辑功能GIS程序 二.字段搜索要素和空间搜索要素GIS程序 三.图层重叠搜索GIS程序 四.要素合并.裁剪及检测要素重叠GIS程序 五.自定义 ...

  5. arcgis engine二次开发python-使用C#配合ArcGIS Engine进行地理信息系统开发

    简单的地图读取.展示终于到暑假了...开始认真整理整理相关学习的心得体会咯~ 先把很久之前挖的关于C# 二次开发的坑给填上好了~ 这次先计划用一个月把C# ArcEngine 10.0相关开发的学习心 ...

  6. ArcGIS Engine二次开发

    目录 1 安装环境配置 2 参考资料 3 面向对象基础 3.1 接口 3.2 类 3.3 对象 3.4 面向对象的三大特性 4 对象模型图和ArcGIS Engine开发帮助 4.1 对象模型图(OM ...

  7. Arcgis Engine二次开发(一)AE开发总览

    参加工作两年多,打算将两年来的AE(Arcgis Engine,本系列后面统一简称AE)开发经验分享出来.打算把AE的开发做成一个系列,原因主要有两个:一个是AE开发网上资源比较少,让从事开发的码农接 ...

  8. 基于C#的ArcGIS Engine二次开发的一个简单测试程序

    上一篇文章介绍了环境的搭建,现在我们来做出第一个小测试程序. (1)先建一个C#窗体应用程序,我将程序名称改为了ArcGIS_test2. (2)点击"工具"->" ...

  9. C#+ArcGIS Engine二次开发之鹰眼功能实现的代码

    开发系统的时候,一定也会考虑鹰眼的实现,鹰眼对整个研究区域有一个整体的轮廓.所以,鹰眼对一个系统来说还是很有必要的.但是找过网上很多代码,大同小异,可最后出现的成果并不是我想要的,终于,get到了心仪 ...

最新文章

  1. 聊聊flink的OperatorStateBackend
  2. Python学习网络爬虫--转
  3. 查看mysql库和表的大小(空间)
  4. 人事软件测试自学,自学软件测试什么课程
  5. ssl1333-地鼠的困境【二分图,最大匹配,图论】
  6. C和混编混合编程----strcpy缓存溢出原理
  7. 基于ubuntu18.04LTS SERVER版的基础系统安装过程
  8. 解决安装MarkupSafe安装 from setuptools import Feature 报错ImportError: cannot import name ‘Feature‘
  9. AS3利用AMFPHP与PHP进行通讯
  10. java 方法的重载_Java中的方法和方法重载
  11. Delphi取UTC时间秒
  12. python 项目目录结构
  13. Linux配置阿里yum源
  14. SSM框架整合+简单的增删改查的实现
  15. LeetCode—面试题:移除重复节点(哈希集合)
  16. js pug 代码_PUG 系列 | 第二课 JS 代码混合、包含引入
  17. 自学-CAD零基础视频教程网站
  18. SIP/VoIP之常见的语音问题
  19. [Android]判断滑动是向左还是向右?
  20. peek用法解决多读一行

热门文章

  1. libvirt介绍和使用
  2. MySQL之binlog
  3. 模拟退火算法及常见应用
  4. NTP 时间服务器配置
  5. BGP协议解析(白话版)
  6. 抽象类(abstract class)和接口(interface)
  7. WinForm—控件TabIndex的作用和设置
  8. CIIP是基于XAF开发的开源信息系统框架
  9. Microsoft Edge (92.0.902.55 ) 打印(window.print) 卡死/无响应
  10. 重定向RedirectAttributes用法