• 大小: 1.45MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-28
  • 语言: C#
  • 标签: AE开发  

资源简介

该段代码实现的是地图的编辑功能,通过该功能,可以让你熟悉AE的开发过程,熟悉一下开发的过程。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.Geodatabase;

namespace SpatialDataEditing
{
    //功能:以DataGridView显示地图各图层的属性,显示内容可以是整个图层上的所有要素,或仅图层上的选择要素
    public partial class AttributesForm : Form
    {
        IMap m_map;
        bool displaySelectedFeatures = true;
        const string m_dataSetName = “m_layerDataSet“;
        const string m_dataSourceName = “GeoDataSource“;
        DataSet m_layerDataSet = new DataSet(m_dataSetName);

        public AttributesForm(IMap map bool displaySelFeatures)
        {
            InitializeComponent();
            m_map = map;
            displaySelectedFeatures = displaySelFeatures;
        }

        private void AttributesForm_Load(object sender EventArgs e)
        {
            CreatelayersTreeView();    
        }

        #region “CreatelayersTreeView“
        private void CreatelayersTreeView()
        {
            TreeNode rootnode = new TreeNode(“layers“);
            trvlayers.Nodes.Add(rootnode);
            for (int i = 0; i <= m_map.layerCount - 1; i++)
            {
                TreeNode layerName = new TreeNode(m_map.get_layer(i).Name);
                if (m_map.get_layer(i) is IGrouplayer || m_map.get_layer(i) is ICompositelayer)
                {
                    ICompositelayer clayer = m_map.get_layer(i) as ICompositelayer;
                    for (int j = 0; j <= clayer.Count - 1; j++)
                    {
                        TreeNode sublayerName = new TreeNode(clayer.get_layer(j).Name);
                        layerName.Nodes.Add(sublayerName);
                    }
                }
                rootnode.Nodes.Add(layerName);
            }
            trvlayers.Sort();
        }

        #endregion

        private void trvlayers_AfterSelect(object sender TreeViewEventArgs e)
        {
            string layerName = e.Node.Text;
            IFeaturelayer featurelayer = GetlayerByName(layerName);
            if (featurelayer == null) return;
            ConstructDataSet(featurelayer);
            dataGridView1.DataSource = m_layerDataSet;
            dataGridView1.DataMember = featurelayer.Name;
        }

        #region “ConstructDataSet“
        private void ConstructDataSet(IFeaturelayer pFeatLyr)
        {
            ilayerFields pFeatlyrFields;
            pFeatlyrFields = pFeatLyr as ilayerFields;
            IFeatureClass pFeatCls = pFeatLyr.FeatureClass;
            if (m_layerDataSet.Tables[pFeatLyr.Name] == null)
            {
                DataTable pTable = new DataTable(pFeatLyr.Name);
                DataColumn pTableCol;
                for (int i = 0; i <= pFeatlyrFields.FieldCount - 1; i++)
                {
                    pTableCol = new DataColumn(pFeatlyrFields.get_Field(i).Al

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        896  2011-11-17 15:01  SpatialDataEditing.sln

     文件       2238  2011-08-28 16:41  SpatialDataEditing\App.ico

     文件       6939  2011-11-17 15:05  SpatialDataEditing\AttributesForm.cs

     文件       4538  2011-11-17 14:56  SpatialDataEditing\AttributesForm.Designer.cs

     文件       5817  2011-08-28 16:41  SpatialDataEditing\AttributesForm.resx

     文件     303104  2012-04-20 14:21  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.ArcMapUI.dll

     文件    1656165  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.ArcMapUI.xml

     文件     360448  2012-04-20 14:16  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.CartoUI.dll

     文件    2578366  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.CartoUI.xml

     文件     323584  2012-04-20 14:10  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.Catalog.dll

     文件    1948089  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.Catalog.xml

     文件     348160  2012-04-20 14:12  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.CatalogUI.dll

     文件    2434065  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.CatalogUI.xml

     文件      90112  2012-04-20 14:09  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.DisplayUI.dll

     文件     614205  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.DisplayUI.xml

     文件     229376  2012-04-20 14:28  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.Editor.dll

     文件    1012220  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.Editor.xml

     文件     135168  2012-04-20 14:31  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.EditorExt.dll

     文件     578949  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.EditorExt.xml

     文件     102400  2012-04-20 14:05  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.framework.dll

     文件     445315  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.framework.xml

     文件      65536  2012-04-20 14:07  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.GeoDatabaseUI.dll

     文件     208120  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.GeoDatabaseUI.xml

     文件      65536  2012-04-20 14:54  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.GeoSurvey.dll

     文件     181693  2012-02-27 14:41  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.GeoSurvey.xml

     文件      40960  2012-04-20 13:51  SpatialDataEditing\bin\Debug\ESRI.ArcGIS.Search.dll

     文件     325632  2014-09-17 11:06  SpatialDataEditing\bin\Debug\MapControlApplication1.exe

     文件     931328  2014-09-17 11:06  SpatialDataEditing\bin\Debug\MapControlApplication1.pdb

     文件      11608  2014-09-17 11:09  SpatialDataEditing\bin\Debug\MapControlApplication1.vshost.exe

     文件        490  2010-03-17 22:39  SpatialDataEditing\bin\Debug\MapControlApplication1.vshost.exe.manifest

............此处省略214个文件信息

评论

共有 条评论