如何在Store / WP8 app c#中的bing map中将特定的PushPin置于所有图钉之上?

时间:2014-05-06 12:37:14

标签: c# xaml windows-phone-8 windows-store-apps bing-maps

我在商店应用中使用Bing.Maps

这是如何重叠的。 Puspin overlapping

每当我选择特定的图钉时,我希望图钉看起来像这样。 Map apps example

  • 我使用了2种不同的图钉样式
  • 关于Tapped事件我正在改变所选图钉的样式(地图商店应用程序)

    Pushpin selectedPin = sender as Pushpin; selectedPin.Style = (Style)(Resources["SomeStyle"]);

问题是其他图钉在选定的Pin上重叠。 有没有办法设置Zindex或所选pushPin的任何属性?或者将所选图钉置于所有引脚顶部的任何技巧?

2 个答案:

答案 0 :(得分:1)

对于商店应用: 将选定的图钉添加到另一个MapLayer。

像这样:http://www.bing.com/blogs/site_blogs/b/maps/archive/2013/06/17/infoboxes-for-native-windows-store-apps.aspx

对于WP8应用: 删除所选的引脚并再次: ZIndex of pushpins in WP7 bing map control

答案 1 :(得分:0)

我们可以在特定推针敲击事件上添加另一个推针,而不是更改图钉样式,并且与父图钉位置相同。我们可以像这样改变新推针的位置原点

   pushpin.Tap += (s, eve) =>
      {
        MapView.SetView(pushpin.Location,MapView.ZoomLevel);
        var pushpinModel = (s as Pushpin).DataContext;
        GeoCoordinate pinLocation = new GeoCoordinate();
        pinLocation = pushpin.Location;
        pin.PositionOrigin = new PositionOrigin(-0.3,0.7);
        pin.Location = pinLocation;
        MapView.Children.Add(pin);
      }