Exemple #1
0
        private static MenuItem GetChangeTransparencyItem(double transparencyPa)
        {
            var transparencyMenuItem = new MenuItem();

            transparencyMenuItem.Header      = transparencyPa + " %";
            transparencyMenuItem.IsCheckable = true;
            double value = transparencyPa / 100;

            transparencyMenuItem.Tag = value;

            transparencyMenuItem.Click += (s, e) =>
            {
                var selectedMenuItem = (MenuItem)s;
                var transparency     = Convert.ToDouble(selectedMenuItem.Tag);
                if (GisEditor.LayerListManager.SelectedLayerListItem == null)
                {
                    return;
                }


                BingMapsOverlay       bingMapsOverlay       = GisEditor.LayerListManager.SelectedLayerListItem.ConcreteObject as BingMapsOverlay;
                OpenStreetMapOverlay  openStreetMapOverlay  = GisEditor.LayerListManager.SelectedLayerListItem.ConcreteObject as OpenStreetMapOverlay;
                WorldMapKitMapOverlay worldMapKitMapOverlay = GisEditor.LayerListManager.SelectedLayerListItem.ConcreteObject as WorldMapKitMapOverlay;

                if (bingMapsOverlay != null && bingMapsOverlay.OverlayCanvas.Opacity != transparency)
                {
                    bingMapsOverlay.OverlayCanvas.Opacity = transparency;
                    bingMapsOverlay.Invalidate();
                }
                else if (openStreetMapOverlay != null && openStreetMapOverlay.OverlayCanvas.Opacity != transparency)
                {
                    openStreetMapOverlay.OverlayCanvas.Opacity = transparency;
                    openStreetMapOverlay.Invalidate();
                }
                else if (worldMapKitMapOverlay != null && worldMapKitMapOverlay.OverlayCanvas.Opacity != transparency)
                {
                    worldMapKitMapOverlay.OverlayCanvas.Opacity = transparency;
                    worldMapKitMapOverlay.Invalidate();
                }


                foreach (MenuItem item in ((MenuItem)selectedMenuItem.Parent).Items)
                {
                    if (!item.Equals(selectedMenuItem))
                    {
                        item.IsChecked = false;
                    }
                }
            };
            return(transparencyMenuItem);
        }