Any chance you could post the MapSplitter control?
//Set table of contents to show all services List<String> layerIDs = new List<String>(); foreach (Layer layer in Maps[0].Layers) { layerIDs.Add(layer.ID); //Set layer changed event to keep multiple maps in sync if (layer is ArcGISDynamicMapServiceLayer) { layer.PropertyChanged += Layer_PropertyChanged; ((ArcGISDynamicMapServiceLayer)layer).VisibilityChanged += Layer_VisibilityChanged; } } layerIDs.Reverse(); Legend.LayerIDs = layerIDs.ToArray();
protected void Layer_PropertyChanged(Object sender, PropertyChangedEventArgs e) { if (e.PropertyName == "Visible" && MapSplitter != null && MapSplitter.LockMaps) { Layer layer = (Layer)sender; for (Int32 i = 1; i < Maps.Count; i++) Maps.Layers[layer.ID].Visible = layer.Visible; } }
protected void Layer_VisibilityChanged(Object sender, EventArgs e) { if(MapSplitter != null && MapSplitter.LockMaps) { Layer layer = (Layer)sender; for (Int32 i = 1; i < Maps.Count; i++) { if (layer is ArcGISDynamicMapServiceLayer) ((ArcGISDynamicMapServiceLayer)Maps.Layers[layer.ID]).VisibleLayers = ((ArcGISDynamicMapServiceLayer)layer).VisibleLayers; } } }
Přihlášení členové mohou přispívat, sledovat aktualizace a další. Jste tu noví? Zaregistrujte si bezplatný účet.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.