private void initMap123(IMapLayers pMapLayer, DevComponents.AdvTree.Node advN) { if (!advN.HasChildNodes && advN.Checked) { string tag = advN.Tag as string; if (tag == "Layer") { //获取xml节点 if (advN.DataKey != null) { XmlNode layerNode = advN.DataKey as XmlNode; string nodeKey = ""; if ((layerNode as XmlElement).HasAttribute("NodeKey")) { nodeKey = layerNode.Attributes["NodeKey"].Value; } ILayer addLayer = ModGetData.GetLayerByNodeKey(pAxMapControl.Map, nodeKey); pMapLayer.InsertLayer(addLayer, false, pMapLayer.LayerCount); } } else if (tag == "OutLayer") { } return; } else if (advN.HasChildNodes) { foreach (DevComponents.AdvTree.Node avN in advN.Nodes) { initMap(pMapLayer, avN); } } }
private ILayer getLayer(DevComponents.AdvTree.Node advN)//支持两层结构递归调用 { if (!advN.HasChildNodes && advN.Checked) { string tag = advN.Tag as string; ILayer addLayer = null; if (tag == "Layer") { //获取xml节点 if (advN.DataKey != null) { XmlNode layerNode = advN.DataKey as XmlNode; string nodeKey = ""; if ((layerNode as XmlElement).HasAttribute("NodeKey")) { nodeKey = layerNode.Attributes["NodeKey"].Value; } addLayer = ModGetData.GetLayerByNodeKey(pAxMapControl.Map, nodeKey); } } else if (tag == "OutLayer") { } return(addLayer); } else if (advN.HasChildNodes) { IGroupLayer pGpLayer = new GroupLayerClass(); pGpLayer.Name = advN.Text; foreach (DevComponents.AdvTree.Node avN in advN.Nodes) { ILayer pLyr = getLayer(avN); if (pLyr != null) { pGpLayer.Add(pLyr); } } return(pGpLayer as ILayer); } return(null); }
private void initMap(IMapLayers pMapLayer, DevComponents.AdvTree.Node advN) { if (!advN.HasChildNodes && advN.Checked) { string tag = advN.Tag as string; if (tag == "Layer") { //获取xml节点 if (advN.DataKey != null) { XmlNode layerNode = advN.DataKey as XmlNode; string nodeKey = ""; if ((layerNode as XmlElement).HasAttribute("NodeKey")) { nodeKey = layerNode.Attributes["NodeKey"].Value; } ILayer addLayer = ModGetData.GetLayerByNodeKey(pAxMapControl.Map, nodeKey); pMapLayer.InsertLayer(addLayer, false, pMapLayer.LayerCount); } } else if (tag == "OutLayer") { } return; } else if (advN.HasChildNodes) { List <string> lstName = getXZQMC(); foreach (DevComponents.AdvTree.Node avN in advN.Nodes) { if (lstName.Contains(avN.Text.Split('_')[0])) { ILayer pLyr = getLayer(avN); if (pLyr != null) { pMapLayer.InsertLayer(pLyr, false, pMapLayer.LayerCount); } } } } }