/// <summary>
/// 初使化地图控件相关事件
/// </summary>
private void InitEvents()
{
MapControl.OnMapZoomChanged += MapControl_OnMapZoomChanged;
}
private const String StatusInfo = "显示级别:{0} 比例尺:{1} 分辨率:{2}";
/// <summary>
/// 地图级别改变事件
/// </summary>
private void MapControl_OnMapZoomChanged()
{
var unit = "米/像素";
if (MapControl.MapProvider.Projection.EpsgCode == 4326)
{
unit = "度/像素";
}
double CurrentLevel = MapControl.Zoom;
label1.Text = String.Format(StatusInfo, CurrentLevel, "1/" +
MapControl.MapProvider.Projection.GetLevelScale(
int.Parse(CurrentLevel.ToString(CultureInfo.InvariantCulture)))
.ToString("#0.00"),
MapControl.MapProvider.Projection.GetLevelResolution(
int.Parse(CurrentLevel.ToString(CultureInfo.InvariantCulture)))
.ToString("#0.0000") + unit);
}
|