/// <summary> /// 对公路网图层进行处理 线程安全 /// 如果有则将其提取到第一个位置 /// 如果没有直接加载 /// </summary> /// <param name="mapControl"></param> public ILayer DealRoutenetLayer(AxMapControl mapControl) { IGroupLayer myGroupLayer = null; int gIndex; int layerIndex; ILayer routeNetLayer = LayerUtil.QueryLayerInMap(mapControl, "公路网", ref myGroupLayer, out layerIndex, out gIndex); //如果公路网的数据没有加载,则直接加载 if (routeNetLayer == null) { routeNetLayer = ShapeSimpleHelper.OpenFile(Common.RouteNetFeaturePath); RouteLayerUtil.SetRouteLayerStyle(routeNetLayer); mapControl.AddLayer(routeNetLayer); } //否则 保证在第一个位置 也就是图层最上面 if (gIndex < 1 && layerIndex == 0) { routeNetLayer.Visible = true; } else { if (myGroupLayer != null) { myGroupLayer.Delete(routeNetLayer); } else { mapControl.Map.DeleteLayer(routeNetLayer); } mapControl.AddLayer(routeNetLayer); } return(routeNetLayer); }
/// <summary> /// 添加图层到mapcontrol当中 /// </summary> /// <param name="fileNames"></param> private void AddFileToMapControl(string [] fileNames) { foreach (var fileName in fileNames) { try { ILayer layer = null; string extension = System.IO.Path.GetExtension(fileName); if (extension == ".shp") { layer = ShapeSimpleHelper.OpenFile(fileName); } else if (extension == ".tif") { layer = RasterSimpleHelper.OpenRasterFile(fileName); } MainFrom.m_mapControl.AddLayer(layer); } catch (Exception e) { Debug.Print(e.Message); } } }