zoukankan      html  css  js  c++  java
  • AE中Identify查询工具的实现

    主要实现点击查询并闪烁显示,并把查询要素的信息通过DataGridView显示出来,主要用到的接口:

    IIdentity、IArray、IIdentifyObj、IFeatureObj、IRowIdentifyObject、IFeature

     
    IGroupLayer pGroupLayer = new GroupLayerClass();
    for (int i = 0; i < axMapControl1.Map.LayerCount; i++)
    {
        pGroupLayer.Add(axMapControl1.Map.get_Layer(i));
    }
    IIdentify pIdentify = pGroupLayer as IIdentify;
    IPoint point = new PointClass();
    point.PutCoords(e.mapX, e.mapY);
    
    
    IArray pID = pIdentify.Identify(point);
    IFeatureIdentifyObj pFeatIdentifyObj;
    IIdentifyObj pIdentifyObj;
    
    pFeatIdentifyObj = pID.get_Element(0) as IFeatureIdentifyObj;
    pIdentifyObj = pFeatIdentifyObj as IIdentifyObj;
    pIdentifyObj.Flash(axMapControl1.ActiveView.ScreenDisplay);
    IRowIdentifyObject pRowObject = pFeatIdentifyObj as IRowIdentifyObject;
    IFeature pFeature = pRowObject.Row as IFeature;
                   
    DataTable pDatatable = new DataTable();
    for (int i = 0; i < pFeature.Fields.FieldCount; i++) //加载每一列字段的名字
    {
        pDatatable.Columns.Add(pFeature.Fields.get_Field(i).Name);
    }
    DataRow pDataRow = pDatatable.NewRow();           //加载查询要素的信息
    for (int i = 0; i < pFeature.Fields.FieldCount; i++)
    {
        pDataRow[i] = pFeature.get_Value(i);
    }
    pDatatable.Rows.Add(pDataRow);  //Iden是另外设置的属性窗口
    DataGridView pDataGridView = Iden.Get_DataGridView;
    pDataGridView.DataSource = pDatatable;
    Iden.Show();  
  • 相关阅读:
    给博客园编辑器完善个插件及简单产品化工作
    在Visual Studio中新增生成项目
    用了三星Dex,我已经快一个月回家没开过电脑了
    BizTalk证书相关操作
    定长文本格式编辑神器
    B2B相关编码说明
    OFTP简介
    Apigee 简介与简单试用
    重置BizTalk RosettaNet
    BizTalk Map 累积连接字符串
  • 原文地址:https://www.cnblogs.com/arxive/p/6109871.html
Copyright © 2011-2022 走看看