public partial class FrmAttributeTable : Form
{
private AxMapControl m_MapCtl;
public FrmAttributeTable(AxMapControl pMapCtl)
{
InitializeComponent();
m_MapCtl = pMapCtl;
} private void FrmAttributeTable_Load_1(object sender, EventArgs e)
{
ILayer pLayer = m_MapCtl.get_Layer();
IFeatureLayer pFLayer = pLayer as IFeatureLayer;
IFeatureClass pFC = pFLayer.FeatureClass; IFeatureCursor pFCursor = pFC.Search(null, false);
IFeature pFeature = pFCursor.NextFeature(); DataTable pTable = new DataTable(); for (int i = ; i < pFC.Fields.FieldCount-; i++)
{
string fieldName = pFC.Fields.get_Field(i+).Name; DataColumn colName = new DataColumn(fieldName);
colName.DataType = System.Type.GetType("System.String");
//colName.Caption为显示各用户看的名称。columnName改变的同时,caption也会变。
pTable.Columns.Add(colName);
} for (int j = ; pFeature != null; j++)
{
DataRow pRow = pTable.NewRow();
pTable.Rows.Add(pRow);
for (int i = ; i < pTable.Columns.Count; i++)
{
string fieldValue = pFeature.get_Value(i + ).ToString();//依次拿到各字段的值 pTable.Rows[j][i] = fieldValue;
}
pFeature = pFCursor.NextFeature();
} dataGridView1.DataSource = pTable; //DataColumn colName = new DataColumn("ID");
//colName.DataType = System.Type.GetType("System.String");
//pTable.Columns.Add(colName); //DataColumn pBSM = new DataColumn("BSM");
//pBSM.DataType = System.Type.GetType("System.String");
//pTable.Columns.Add(pBSM); //DataColumn colArea = new DataColumn("TBMJ");
//colArea.DataType = System.Type.GetType("System.String");
//pTable.Columns.Add(colArea); //DataColumn colParameter = new DataColumn("TBZC");
//colArea.DataType = System.Type.GetType("System.String");
//pTable.Columns.Add(colParameter); //int indexOfID = pFC.FindField("ID");
//int indexOfBSM = pFC.FindField("BSM");
//int indexOfTBMJ = pFC.FindField("TBMJ");
//int indexOfTBZC = pFC.FindField("TBZC"); //while (pFeature != null)
//{
// string id = pFeature.get_Value(indexOfID).ToString();
// string bsm = pFeature.get_Value(indexOfBSM).ToString();
// string TBMJ = pFeature.get_Value(indexOfTBMJ).ToString();
// string TBZC = pFeature.get_Value(indexOfTBZC).ToString();
// DataRow pRow = pTable.NewRow();
// pRow[0] = id;
// pRow[1] = bsm;
// pRow[2] = TBMJ;
// pRow[3] = TBZC;
// pTable.Rows.Add(pRow);
// pFeature = pFCursor.NextFeature();
//} }
}

ae动态显示属性表————切记DataTable中要先Add(row)之后再往里传值。的更多相关文章

  1. AE二次开发中几个功能速成归纳(符号设计器、创建要素、图形编辑、属性表编辑、缓冲区分析)

    /* * 实习课上讲进阶功能所用文档,因为赶时间从网上抄抄改改,凑合能用,记录一下以备个人后用. * * ----------------------------------------------- ...

  2. arcEngine开发之查看属性表

    这篇文章给出实现属性表功能的具体步骤,之后再对这些步骤中的代码进行分析. 环境准备 拖动TOCControl.MapControl控件到Form窗体上,然后拖动ContextMenuStrip控件至T ...

  3. 【转载】C#通过Remove方法移除DataTable中的某一列数据

    在C#中的Datatable数据变量的操作过程中,有时候我们需要移除当前DataTable变量中的某一列的数据,此时我们就需要使用到DataTable变量内部的Columns属性变量的Remove方法 ...

  4. AE属性表操作

    转自chanyinhelv原文AE属性表操作 实现的操作包括:1.打开属性表:2.编辑属性表:3.增加属性列:4.数据排序:5.字段计算…… 嗯,实现的功能目前就这些吧,后续还会继续跟进,还望大家多多 ...

  5. TWaver初学实战——如何在TWaver属性表中添加日历控件?

    在日期输入框中添加日历控件,是一种非常流行和实用的做法.临渊羡鱼不如退而写代码,今天就看看在TWaver中是如何实现的.   资源准备   TWaver的在线使用文档中,就有TWaver Proper ...

  6. 多个不同的表合并到一个datatable中,repeater在绑定datatable

    using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI ...

  7. MFC中属性表单和向导对话框的使用

    每次在使用MFC创建一个框架时,需要一步步选择自己的程序的外观,基本功能等选项,最后MFC会生成一个基本的程序框架,这个就是向导对话框:而属性表单则是另外一种对话框,表单上有多个属性页,每点击某一页, ...

  8. 【JVM虚拟机】(8)--深入理解Class中--方法、属性表集合

    #[JVM虚拟机](8)--深入理解Class中--方法.属性表集合 之前有关class文件已经写了两篇博客: 1.[JVM虚拟机](5)---深入理解JVM-Class中常量池 2.[JVM虚拟机] ...

  9. 去除ArcMap连接空间数据库中多余的属性表

    这个操作目前可能不具有可行性,但是为了完整性还是在下面讲一下吧.如有兴趣的小伙伴,可以按照下面的操作方式去尝试. 一.需求 去除ArcMap连接空间数据库中多余的属性表. PL/SQL中查询得到的内容 ...

随机推荐

  1. [Node.js] 对称加密、公钥加密和RSA

    原文地址:http://www.moye.me/2015/06/14/cryptography_rsa/ 引子 对于加解密,我一直处于一种知其然不知其所以然的状态,项目核心部分并不倚重加解密算法时,可 ...

  2. AngularJS in Action读书笔记5(实战篇)——在directive中引入D3饼状图显示

    前言: "宁肯像种子一样等待  也不愿像疲惫的陀螺  旋转得那样勉强" 这是前几天在查资料无意间看到的一位园友的签名,看完后又读了两遍,觉得很有味道.后来一寻根究底才知这是出资大诗 ...

  3. [New Portal]Windows Azure Cloud Service (34) TechEd 2013 North America关于Azure的最新消息

    <Windows Azure Platform 系列文章目录> 话说TechEd 2013 US上个月3-6日在美国举办了,笔者的文章又有点姗姗来迟了. 需要了解相关视频的网友,请浏览ht ...

  4. java基础题目总结

    有些基础题目由于工作中用的比较少但却又是不可少的,这样回答起来就会反应慢,不确定,不准确,特此开了文章记录遇到的不确定或者回答比较拗口的问题. 1.servlet是单例的吗,是安全的吗,是多线程吗 s ...

  5. Theano入门神经网络(一)

    Theano是一个Python库,专门用于定义.优化.求值数学表达式,效率高,适用于多维数组.特别适合做机器学习.一般来说,使用时需要安装python和numpy. 首先回顾一下机器学习的东西,定义一 ...

  6. JS魔法堂:元素克隆、剪切技术研究

    一.前言 当需要新元素时我们可以通过 document.createElement 接口来创建一个全新的元素,也可以通过克隆已有元素的方式来获取一个新元素.而在部分浏览器中,通过复制来获取新元素的效率 ...

  7. 【原创】Kakfa message包源代码分析

    笔者最近在研究Kafka的message包代码,有了一些心得,特此记录一下.其实研究的目的从来都不是只是看源代码,更多地是想借这个机会思考几个问题:为什么是这么实现的?你自己实现方式是什么?比起人家的 ...

  8. 【转】关于redis.conf的参数配置

    1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程 daemonize no 2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/ru ...

  9. js 比较好的博客

    1.0 作者:cloudgamer http://www.cnblogs.com/cloudgamer/archive/2010/04/01/ImageZoom.html

  10. 微信公众号入门学习1_使用C#,ASP.NET APIController如何公众号接入服务器并启动开发者模式

    前言:  本文是以微信公众号中的订阅号(个人)来进行简单介绍,本人也是刚刚开始学习,有不足之处,欢迎批评指正. 先粘贴2个帮助链接: 入门指引:http://mp.weixin.qq.com/wiki ...