private string GetMapType() { if (map.Mode is RoadMode) { return("Road"); } else { AerialMode mode = map.Mode as AerialMode; if (mode.Labels) { return("AerialWithLabels"); } return("Aerial"); } }
private void togglemap_Click(object sender, RoutedEventArgs e) { if (mymap.Mode is AerialMode) { RoadMode r = new RoadMode(); mymap.Mode = r; } else { AerialMode a = new AerialMode(true); mymap.Mode = a; } }
private void UpdateMapType() { bttnNormal.IsChecked = false; bttnSatellite.IsChecked = false; bttnHybrid.IsChecked = false; bttnTerrain.IsChecked = false; map.Children.Clear(); map.Children.Add(tileLayer); tileLayer.Visibility = System.Windows.Visibility.Collapsed; if (currentSource != null) { tileLayer.TileSources.Clear(); } #region Main Map Source Management switch (mapType) { case MapType.Normal: bttnNormal.IsChecked = true; if (currentSource != null) { currentSource.MapMode = mapType; } else { map.Mode = new RoadMode(); } break; case MapType.Hybrid: bttnHybrid.IsChecked = true; if (currentSource != null) { currentSource.MapMode = mapType; tileLayer.TileSources.Add(currentSource.HybridBase); } else { AerialMode aerialMode = new AerialMode(); aerialMode.Labels = true; map.Mode = aerialMode; } break; case MapType.Satellite: bttnSatellite.IsChecked = true; if (currentSource != null) { currentSource.MapMode = mapType; } else { AerialMode aerialMode = new AerialMode(); aerialMode.Labels = false; map.Mode = aerialMode; } break; case MapType.Terrain: bttnTerrain.IsChecked = true; if (currentSource != null) { currentSource.MapMode = mapType; } else { map.Mode = new RoadMode(); } break; } #endregion if (currentSource != null) { tileLayer.TileSources.Add(currentSource as Microsoft.Maps.MapControl.TileSource); tileLayer.Visibility = System.Windows.Visibility.Visible; } foreach (OverlayItem item in overlays) { MapTileLayer layer = item.Provider; map.Children.Add(layer); layer.Visibility = System.Windows.Visibility.Visible; } }