ArcEngine开发——根据图层名称获取对应图层

  在ArcEngine二次开发过程中,一个经常会被用到的功能就是根据图层名称获取对应图层,记录于此。

 1         private ILayer GetLayerByName(string strLyrName)
2 {
3 ILayer pLayer = null;
4 bool bFindLayer = false; ;
5 for (int i = 0; i < pMapControl.Map.LayerCount; i++)
6 {
7 pLayer = pMapControl.Map.get_Layer(i);
8 if (pLayer is IGroupLayer || pLayer is ICompositeLayer)
9 {
10 ICompositeLayer pComLyr = pLayer as ICompositeLayer;
11 for (int j = 0; j < pComLyr.Count; j++)
12 {
13 pLayer = pComLyr.get_Layer(j);
14 if (pLayer.Name.Equals(strLyrName))
15 {
16 bFindLayer = true;
17 break;
18 }
19 else
20 {
21 pLayer = null;
22 }
23 }
24 }
25 else
26 {
27 if (pLayer.Name == strLyrName)
28 {
29 bFindLayer = true;
30 }
31 else
32 {
33 pLayer = null;
34 }
35 }
36 if (bFindLayer)
37 {
38 break;
39 }
40 }
41 return pLayer;
42 }
原文地址:https://www.cnblogs.com/hans_gis/p/2288976.html