protected virtual void OnOverlayChanged(OverlayChangedOverlaySwitcherEventArgs e) { EventHandler<OverlayChangedOverlaySwitcherEventArgs> handler = OverlayChanged; if (handler != null) { handler(this, e); } }
private void ChangeBaseOverlay(OverlayItem item) { if (IsLoaded) { OverlayChangedOverlaySwitcherEventArgs overlaySwitchedEventArgs = new OverlayChangedOverlaySwitcherEventArgs(item.Overlay); OnOverlayChanged(overlaySwitchedEventArgs); if (overlaySwitchedEventArgs.Cancel) { item.IsVisible = false; } else { foreach (Overlay overlay in CurrentMap.Overlays.Where(o => o.IsBase)) { overlay.IsVisible = item.Overlay == overlay; } CurrentMap.Refresh(); } } }