我正在使用C#使用Bing Maps创建Windows Store应用程序。我正在尝试在地图上存储和检索随机放置的Puspin的位置,但是当我使用PushPin.Location尝试打印位置时,我会收到以下错误:
'bing.maps.pushpin'不包含"位置"的定义,并且 没有扩展方法"位置"接受类型的第一个参数 可以找到'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中Pushpin类的属性也有示例用于Windows Phone 7,例如在此问题中。
有什么想法我缺少什么?还是Windows 8?
它的工作方式如下:
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();
}
啊,很好,谢谢。我也找到了另一种方法。本质上是同一件事,但使用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();
}