private void Map1_CurrentScaleChanged(object sender, CurrentScaleChangedMapViewEventArgs e) { // Here we sync up the zoom combox to the map's zoom level. PrinterZoomLevelSet printerZoomLevelSet = (PrinterZoomLevelSet)Map1.ZoomLevelSet; ZoomLevel currentZoomLevel = printerZoomLevelSet.GetZoomLevel(Map1.CurrentExtent, Map1.ActualWidth, Map1.MapUnit); cbxPercentage.SelectionChanged -= cbxPercentage_SelectionChanged; cbxPercentage.SelectedItem = printerZoomLevelSet.GetZoomPercentage(currentZoomLevel) + "%"; cbxPercentage.SelectionChanged += cbxPercentage_SelectionChanged; }
private void mapView1_CurrentScaleChanged(object sender, CurrentScaleChangedMapViewEventArgs e) { int zoom = MBTilesGenerator.GetZoom(this.mapView1.ZoomLevelSet, e.NewScale); StringBuilder sb = new StringBuilder(); sb.AppendLine($"Current Zoom: {zoom}"); MBTiles.Tile tile = MBTilesGenerator.GetFirstTile(txtMbtilesFilePathname.Text, zoom); if (tile != null) { foreach (MBTiles.TileLayer tileLayer in tile.Layers) { sb.AppendLine($"Layer: {tileLayer.Name}"); sb.AppendLine($"Version: {tileLayer.Version}"); sb.AppendLine($"There are {tileLayer.Keys.Count} columns in the data"); foreach (string key in tileLayer.Keys) { sb.AppendLine($"\t Column Name: {key}"); } } } txtMBTileInfo.Text = sb.ToString(); }