如何组织AxTOCControl里面的数据,实际上是组织AXMapControl的数据,将添加的数据进行整理。代码在最后面。

思路参考自:

https://blog.csdn.net/u012488787/article/details/39028813 ,比想象的简单的多

加载图层事件:

http://resources.esri.com/help/9.3/ArcGISEngine/dotnet/ViewCodePages/a66f3104-3a61-4bbd-b1c4-310335e6bb1eForm1.cs.htm

http://zhihu.esrichina.com.cn/question/20551

http://help.arcgis.com/en/sdk/10.0/arcobjects_net/componenthelp/index.html#//004900000051000000

http://blog.sciencenet.cn/blog-971075-1016456.html

        #region 图层分组方法
private void UpdateTOCControlLayers(AxMapControl axMap)
{
if (axMap.Map.LayerCount == 0)
{
return;
} IMapLayers mapLayers = axMap.Map as IMapLayers;
//设置axtoccontrol的首层名称为“图层”
axMap.Map.Name = "图层";
List<string> listGroupLyrNames = new List<string>() { "总规", "分规", "控规"};
foreach (string groupLayerName in listGroupLyrNames)
{
IGroupLayer basemapGroupLayer = new GroupLayerClass();
basemapGroupLayer.Name = groupLayerName;
axMap.Map.AddLayer(basemapGroupLayer);
//将所有要素图层作为二级目录
IEnumLayer enumLayer = LayersGetUtil.GetEnumLayer(axMapControl1.Map);
enumLayer.Reset();
ILayer layer = enumLayer.Next();
while (layer != null)
{
//如果图层名截取的字符串跟图层组名称相同
if (GetGroupNameOfLayer(layer) == groupLayerName)
{ mapLayers.MoveLayerEx(null, basemapGroupLayer, layer, 0); }
layer = enumLayer.Next(); }
basemapGroupLayer.Expanded = false;
}
} private string GetGroupNameOfLayer(ILayer layer)
{
string matchGroupName = null;
IDataLayer dataLayer = layer as IDataLayer;
IDatasetName datasetName = dataLayer.DataSourceName as IDatasetName;
string groupName = datasetName.Name.Substring(0, 2);
switch (groupName.ToUpper())
{
case "ZG":
matchGroupName = "总规";
break;
case "FG":
matchGroupName = "分规";
break;
case "KG":
matchGroupName = "控规";
break; default:
break; }
return matchGroupName;
}
#endregion
                 

  

如何组织AxTOCControl里面的数据的更多相关文章

  1. 【SAP业务模式】之ICS(四):组织单元的配置

    SAP的ICS业务后台配置主要有以下几个配置点: 1.组织单元的配置(公司代码.销售组织.工厂.采购组织等): 2.主数据的部分: 3.订单和开票的定价过程: 4.开票输出类型: 5.公司间发票的配置 ...

  2. [译]学习IPython进行交互式计算和数据可视化(四)

    第三章 使用Python进行数字计算 尽管IPython强大的shell和扩展后的控制台能被任何Python程序员使用,但是这个工具最初是科学奖为科学家设计的.它的主要设计目标就是为使用Python进 ...

  3. [译]学习IPython进行交互式计算和数据可视化(三)

    第二章 在本章中,我们将详细学习IPython相对以Python控制台带来的多种改进.特别的,我们将会进行下面的几个任务: 从IPython中使用系统shell以在shell和Python之间进行强大 ...

  4. 使用Spark分析拉勾网招聘信息(二): 获取数据

    要获取什么样的数据? 我们要获取的数据,是指那些公开的,可以轻易地获取地数据.如果你有完整的数据集,肯定是极好的,但一般都很难通过还算正当的方式轻易获取.单就本系列文章要研究的实时招聘信息来讲,能获取 ...

  5. 安卓天天练练(十一)用list绑数据

    之前在练练ListView的时候就有个 BaseAdapter ba = new BaseAdapter() { 用Adapter来绑数据的方法,该方法中 LinearLayout ll=new Li ...

  6. Analyzing the Analyzers 分析分析师 —— 数据科学部门如何建

    很多牛逼的公司都宣称在建立数据科学部门,这个部门该如何组建,大家都在摸石头过河. O‘reilly Strata今年 六月份发布了报告 <Analyzing the Analyzers>, ...

  7. 数据意识崛起,从企业应用看BI软件的未来发展

    前阵子,和一群企业CIO聊天,希望从甲方角度看看对BI产品的看法.在问及一些成熟企业为何不上BI项目时,大家纷纷表示目前还处于观望状态. 提及BI,大家都觉得有些飘忽,和大数据一样,听着高大上,能真正 ...

  8. 【转】国际GNSS服务组织IGS

    国际GNSS服务组织The International GNSS Service,简称IGS,前身为国际GPS服务组织.IGS提供的高质量数据和产品被用于地球科学研究等多个领域. IGS组织由卫星跟踪 ...

  9. 迎战大数据-Oracle篇

    来自:http://www.cnblogs.com/wenllsz/archive/2012/11/16/2774205.html 了解大数据带来的机遇: 透视架构与工具: 开源节流,获得竞争优势. ...

随机推荐

  1. php页面编码设置

    php的header来定义一个php页面为utf编码或GBK编码 php页面为utf编码 header("Content-type: text/html; charset=utf-8&quo ...

  2. IIS命令行静默安装脚本-python

    #coding=utf8 import platform from subprocess import Popen,PIPE,STDOUT import sys,os def run_cmd(cmd, ...

  3. Error while Installing APKs

    这一篇帖子 会写的比较简单 不过相信大家也可能遇到这些问题   为了怕自己忘记  记录下来  顺便也和大家一起分享 描述:在一些机型上安装软件 提示卸载原先的软件  但是又安装不上新软件DELETE_ ...

  4. 20175226 2018-2019-2 《Java程序设计》第三周学习总结

    20175226 2018-2019-2 <Java程序设计>第三周学习总结 教材学习内容总结 编程语言的几个发展阶段 类面向机器语言(汇编语言).面向过程语言(C语言).面向对象语言(J ...

  5. shell生成rsync同步脚本

    test #!/bin/bash # # Rsync Install Script # Last Updated # ##### modify by Jinayf ##### ######手动修改以下 ...

  6. python内置模块之-logging

    logging 模块主要用于写日志 logging模块主要有如下几个组件 Logger  Logger对象提供应用程序可直接使用的接口 Handler Handler发送日志到适当的目的地 Filte ...

  7. python实现简单的登录管理

    import json,timeusername=[]userpasswd=[]def login_success_file(name): try: f=open(r"F:/login_su ...

  8. echarts4.0折线图让某个点闪烁

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. node+mongoose+vue

    app.js 入门 let express = require('express'); let app = express(); let allowCrossDomain = function (re ...

  10. Constructing continuous functions

    This post summarises different ways of constructing continuous functions, which are introduced in Se ...