Windows Phone 7 - 映射PushPin不随地图移动?

时间:2011-10-06 20:18:52

标签: windows-phone-7 pushpin

有点奇怪。我最近开始了WP7开发并试图移植我编写的iOS应用程序。该应用程序的一部分涉及使用纬度和经度将图钉放置在地图上。我使用这个工作正常:

  Pushpin pushpin = new Pushpin();
  Location location = new Location();
  location.Latitude = lat;
  location.Longitude = lng;
  pushpin.Location = location;
  pushpin.Name = name;
  MyMap.Children.Add(pushpin);

引脚看起来很好,但是当我拖动地图或缩放时,引脚会停留在屏幕的中心点而不是与地图相关的位置。因此,如果用户向左拖动地图,则引脚会保持在屏幕中心的位置,而不是粘贴在地图上的坐标上。

我需要设置一些东西,但我目前缺少了吗?谢谢你的帮助

2 个答案:

答案 0 :(得分:1)

在我看来,您可能会受益于使用GeoCoordinate类和ViewModel将您的位置数据绑定到应用程序控件。

刚刚发布了一些应该可以帮助您的样本。 Geo-Location iPhone到Windows Phone迁移示例(http://windowsphone.interoperabilitybridges.com/articles/iphone-to-windows-phone-geo-location)直接适用于您的情况。您可以通过文章底部的链接下载iOS和Windows Phone示例。

答案 1 :(得分:0)

您指定的位置无效。如果它不是有效的GeoCoordinate,它将保持固定在屏幕中间。

我不确定你为什么使用Location,因为那是Pushpin的Silverlight类,而不是Windows Phone类。您确定要添加正确的参考文献并使用正确的图钉类型吗?

如果您使用Bing Map的正确程序集(Microsoft.Phone.Controls.Maps程序集),则代码甚至不应编译。

有关如何使用图钉的详细教程,请参阅http://msdn.microsoft.com/en-us/gg266447