转自nimeila的回答 求C# ArcGIS Engine修改选中要素的属性,单要素都行

RLAlterFrm RLalter = new RLAlterFrm();
RLalter.ShowDialog(); string AlterID = RLalter.textBox1.Text;
string AlterRP = RLalter.textBox2.Text;
string AlterC = RLalter.textBox3.Text; axMapControl1.ClearLayers();
axMapControl1.Refresh(); try
{
string strFileName = Application.StartupPath + @"\数据\Roadlamp.mxd";
//在数据视图中加载地图,供查询操作
if (axMapControl1.CheckMxFile(strFileName))
{
axMapControl1.LoadMxFile(strFileName);
}
else
{
MessageBox.Show("错误的数据路径:" + strFileName);
}
}
catch (Exception ex)
{
MessageBox.Show("Error01 in MainForm.cs" + ex.Message);
}
axMapControl1.Refresh(); string strQK = RLalter.getQueryKey();//获取查询值 //找到图层
IFeatureLayer pfeaturelayer = new FeatureLayer();
pfeaturelayer = axMapControl1.get_Layer() as IFeatureLayer; //找到要素
IQueryFilter pQueryFilter = new QueryFilter();
pQueryFilter.WhereClause = "[RL_ID] = '" + strQK + "'"; IFeatureCursor pFeatureCur = pfeaturelayer.Search(pQueryFilter, false); IFeature pFeature = null; pFeature = pFeatureCur.NextFeature(); if (null == pFeature)
{
MessageBox.Show("对不起!该元素不存在");
} else
{
IFields pFields = pFeature.Fields;
IFeatureClass pFeatureClass = pfeaturelayer.FeatureClass; //修改属性值
int field1 = pFields.FindField("RL_ID");
int field2 = pFields.FindField("RL_RP");
int field3 = pFields.FindField("RL_C");
pFeature.set_Value(field1, AlterID);
pFeature.set_Value(field2, AlterRP);
pFeature.set_Value(field3, AlterC);
pFeature.Store();
MessageBox.Show("修改成功!","提示");
}
}

ArcGIS 中要素的查询与修改的更多相关文章

  1. ArcGIS中的查询

    最近身体不适,静下心来看了一下以前收集的电子书.下面是<ArcGIS地理信息系统教程_第5版>(李玉龙)第5章“查询”的读书笔记. 1.查询的常见应用: 选择感兴趣的要素:查找哪些要素满足 ...

  2. ArcGIS AO中控制图层中要素可见状态的总结

    一.DefinitionExpression 实现新建查询图层,查询结果要素为选中状态 该接口可以通过两种方法来控制要素的可见状态. 思路1 通过该接口的 DefinitionExpression 方 ...

  3. ArcGIS中如何导出单个矢量要素图形

    原文:ArcGIS中如何导出单个矢量要素图形 在ARCGIS中载入了一张含有省界的中国地图,是SHP文件.现在我只想要其中一块地区的,实现方法如下: 加入到ArcGIS后,右击图层,打开属性表(att ...

  4. ArcGIS中使用异步回调函数查询图层Graphic

    在我们的地图的操作中经常会有一些操作是需要通过画多边形或者画线来查找某一块区域内的特定的Graphics比如我们在做的交警的项目中通过框选来查找某一块区域中的摄像机,某一块区域中的警力.警情.警员等相 ...

  5. 如何快速批量修改ArcGIS中的图层设置

    在ArcGIS中作图的时候,我们通常需要设置图层的颜色和粗细.点击图层的颜色,会跳出以下符号选择器: 右侧即可修改我们需要的属性. 但是我们有多个类似的属性如何修改成统一的样式呢? 鼠标图层右键,选择 ...

  6. Arcgis CreateFishnet工具,生成到FileGDB中要素类的格网大小不一致

    我的第一篇博客!哈哈 最近在做一些关于创建渔网的工作,发现一些问题,做个总结. 1.问题描述:如图1,设置好渔网的必要参数,输出目录为gdb里的矢量图层,(行列数比较大,渔网的地理范围较小),输出的格 ...

  7. 【总结整理】关于ArcGIS中拓扑的理解

    空间拓扑: https://www.baidu.com/link?url=f8fd1d75GhwtT1JuyPDZydZlWCgEXB9DeuTzDqGQIIRpq0bM-8t3MlC5tXYvEwQ ...

  8. arcgis中栅格矢量计算技巧收藏

    ​ ​编辑 一.计算面积 ( 可以帮我们计算小班面积 )添加 AREA 字段,然后右键点击字段列,然后点击 CALCULATE VALUES; ---> 选择 ADVANCED -->把下 ...

  9. (九)WebGIS中的矢量查询(针对AGS和GeoServer)

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 1.前言 在第七章里我们知道了WebGIS中要素的本质是UICompo ...

随机推荐

  1. 不固定高宽的 div 水平垂直居中

    <div class="father"> <div id="main"></div> </div> .fathe ...

  2. linux中内存泄漏的检測(五)记录内存泄漏的代码

    到眼下为止,先后通过wrap malloc.new函数重载和计算指针内存大小的方法.基本上满足了对内存泄漏检測的须要. 假设发现了内存泄漏.那么就要找到内存泄漏的地方而且修正它了. 茫茫代码.如何去找 ...

  3. 推断一个java文件和邮箱格式是否合法

    import java.util.Scanner; public class StringTest { public static void main(String[] args) { int bac ...

  4. js---15,模拟数组的ecah方法

    原型的另外一个作用就是扩展对象中的属性和方法的 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http:// ...

  5. Android学习笔记进阶十一图片动画播放(AnimationDrawable)

    大家平时见到的最多的可能就是Frame动画了,Android中当然也少不了它.它的使用更加简单,只需要创建一个 AnimationDrawabledF对象来表示Frame动画,然后通过addFrame ...

  6. make 2>&1 | tee build.log

    make 2>&1 | tee build.log 保存编译log,方便问题查找

  7. js上传文件(图片)的格式和大小限制

    如果你想快速解决这个问题,看本文就够了.查了好多资料,终于解决了,太耗时间了,本文留给给后来者,希望你们工作的更轻松 本文保存为.html文件用浏览器打开即可测试功能 <form id=&quo ...

  8. 关于Webpack详述系列文章 (第三篇)

    1. 类图 1. 模块 Module是webpack中最核心的类,要加载定的一切和依赖都是Module. 它有很多子类 RawModule NormalModule MultiModule Conte ...

  9. CentOS 7 网络配置、远程访问

    网络配置(配置固定IP访问) 相关命令 ip add 查看网卡状态 ifup eth0 打开端口eth0 ifdown eth0 关闭端口eth0 dhclient 自动获取IP mii-tool e ...

  10. C# 反射基础运用

    反射是.NET中的重要机制,通过反射,可以在运行时获得程序或程序集中每一个类型 (包括类.结构.委托.接口和枚举等)的成员和成员的信息. 其实有些人会问, 像我们平常引用DLL可以直接用, 为什么要用 ...