如何在WP8.1中添加动态PushPin进行映射

时间:2015-04-15 11:50:27

标签: windows-phone-8.1 bing-maps pushpin geopositioning

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

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

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

2 个答案:

答案 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
}