用于Windows应用商店的Bing地图上的pushpin.Location错误

时间:2012-10-17 19:22:22

标签: windows-8 location bing-maps windows-store-apps pushpin

我正在使用C#使用bing贴图创建一个Windows应用商店应用。我试图在地图上存储和检索随机放置的图钉的位置,但是当我使用pushpin.Location尝试打印位置时,我收到以下错误:

  

'Bing.Maps.Pushpin'不包含'Location'的定义   没有扩展方法'Location'接受类型的第一个参数   可以找到'Bing.Maps.Pushpin'(你是否错过了使用指令   或汇编参考?)

下面的简单代码示例更清楚地显示了我的意思:

private async void pushpinTapped(object sender, Windows.UI.Xaml.Input.TappedRoutedEventArgs e)
{
      MessageDialog dialog = new MessageDialog("You are here" + pushPin.Location());
      await dialog.ShowAsync();
}

它明确指出位置是API here中图钉类的属性 还有一些用于Windows Phone 7的例子,例如this question

我缺少什么想法?或者此功能不适用于Windows 8?

2 个答案:

答案 0 :(得分:1)

它的工作原理如下:

async void pin_Tapped(object sender, TappedRoutedEventArgs e)
        {
            Pushpin pin = sender as Pushpin;
            Location pinLocation = MapLayer.GetPosition(pin);
            MessageDialog dialog = new MessageDialog("You are here: " + pinLocation.Latitude +", " + pinLocation.Longitude);
            await dialog.ShowAsync();
        }

答案 1 :(得分:0)

很好,谢谢你。 我找到了另一种方法。基本上是相同的,但使用var x而不是位置。

private async void pushpinTapped(object sender,Windows.UI.Xaml.Input.TappedRoutedEventArgs e)
{
     Pushpin tappedpin = sender as Pushpin;  
     if (null == tappedpin) return;  
     var x = MapLayer.GetPosition(tappedpin); 
     MessageDialog dialog = new MessageDialog("You are here " + x.Latitude + ", " + x.Longitude);
     await dialog.ShowAsync();
}