private void RemoveMapLayers(Layer _layer) { _layer.LayerChanged -= new Layer.LayerChangedHandler(this.layer_OnLayerChanged); _layer.Initialized -= new EventHandler<EventArgs>(this.layer_Initialized); _layer.CancelLoad(); _layer.Container.Children.Clear(); if ((this.layerCollectionContainer != null) && this.layerCollectionContainer.Children.Contains(_layer.Container)) { this.layerCollectionContainer.Children.Remove(_layer.Container); } _layer.ClearValue(MapProperty);//用的都是Clear _layer.ClearValue(LastLayerViewBoundsProperty); if (((_layer is FeaturesLayer) && (this.Popup.Child != null)) && ((_layer as FeaturesLayer).ToolTip == this.Popup.Child)) { this.CloseToolTip(); } }