0

我目前正在尝试开发一个允许用户添加新图钉的简单应用程序。我目前正在使用以下代码添加新的图钉,

        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);

但是,要使用此代码,我需要用户选择的位置的纬度和经度。那么如何获取用户选择的位置的纬度和经度。(只是地理坐标)我知道我需要编写一个事件处理程序,但我不知道它必须实现的方式......谢谢......

4

2 回答 2

0

有多个地图事件,例如

CenterChaged, MapTapped

您可以处理这些事件以添加您的图钉。这是 MapTapped 示例

 async private void map_MapTapped(MapControl sender, MapInputEventArgs args)
    {
       var MyGeoPosition = args.Location;
      //....
    }
于 2015-04-15T12:18:38.040 回答
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
}
于 2015-04-16T12:11:35.833 回答