/// <summary>
/// 根据经纬度坐标查询地址并定位(该功能需要联网支持)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button8_Click(object sender, EventArgs e)
{
if(String.IsNullOrEmpty(textBox2.Text) || String.IsNullOrEmpty(textBox3.Text))
{
MessageBox.Show("坐标不能为空!");
return;
}
var point = new PointLatLng(double.Parse(textBox3.Text), double.Parse(textBox2.Text));
// 使用腾讯地图坐标查询接口
var result = GeocodingTool.TencentReGeo(point);
if (!String.IsNullOrEmpty(result.Address))
{
// 定位过去并放大地图到指定级别
MapControl.Position = result.Point;
MapControl.Zoom = MapControl.MaxZoom - 5 >= MapControl.MinZoom ? MapControl.MaxZoom - 5 : MapControl.MaxZoom;
AZMapMarker marker = new AZMapMarkerGoogle(result.Point, AZMapMarkerGoogleType.green_small) // 新建一个Marker地标
{
ToolTipText = result.Address,
ToolTipMode = MarkerTooltipMode.Always
};
MapControl.AddMarker(marker);
MessageBox.Show("查询成功!");
}
else
{
MessageBox.Show("查询失败!");
}
}
/// <summary>
/// 显示当前位置坐标
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button9_Click(object sender, EventArgs e)
{
textBox2.Text = MapControl.Position.Lng.ToString();
textBox3.Text = MapControl.Position.Lat.ToString();
}
|