WP8.1 如何添加动态图钉到地图

How to add a dynamic PushPin to map in WP8.1

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

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

但是,要使用此代码,我需要用户选择的位置的纬度和经度。那么我怎样才能得到用户选择的位置的纬度和经度。 (简单的地理坐标)我知道我需要写一个事件处理程序,但我不知道它必须实现的方式...谢谢...

有多个像

这样的地图事件

CenterChaged, MapTapped

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

 async private void map_MapTapped(MapControl sender, MapInputEventArgs args)
    {
       var MyGeoPosition = args.Location;
      //....
    }

试试这个

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
}