我目前正在尝试开发一个允许用户添加新图钉的简单应用程序。我目前正在使用以下代码添加新图钉,
Pushpin pushpin1 = new Pushpin();
pushpin1.GeoCoordinate = MyGeoPosition;
pushpin1.Content = "My car";
MapOverlay overlay1 = new MapOverlay();
overlay1.Content = pushpin1;
overlay1.GeoCoordinate = MyGeoPosition;
layer1.Add(overlay1);
myMap.Layers.Add(layer1);
但是,要使用此代码,我需要用户选择的位置的纬度和经度。那么我如何获得用户所选位置的纬度和经度。 (只是地理坐标)我知道我需要编写一个事件处理程序,但我不知道它必须实现的方式......谢谢......
答案 0 :(得分:0)
有多个地图事件,例如
CenterChaged,MapTapped
您可以处理这些事件以添加推针。这是MapTapped示例
async private void map_MapTapped(MapControl sender, MapInputEventArgs args)
{
var MyGeoPosition = args.Location;
//....
}
答案 1 :(得分:0)
试试这个
MapA = new Map();
MapA.Tap += MapA_Tap;
void MapA_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
GeoCoordinate location = MapA.ConvertViewportPointToGeoCoordinate(e.GetPosition(MapA));
//display pushpin by using location.latitude and location.longitude
}