我有一张位于滚动查看器内的bing地图以及一个列表框。
现在问题是当滚动查看器的内容向下滚动时,“Bing地图呈现在滚动查看器上方(滚动查看器边界之外)的其他元素之上”
<TextBlock Text="some text" />
<ScrollViewer>
<map:Map ... />
<ListBox ... />
</ScrollViewer>
有什么问题?这是一个已知的bug吗? 我正在尝试在搜索结果列表框中包含一个小地图(与windows phone bing结果页面'本地'枢轴项目相同)
一些观察: (1)只有顶部地图平铺图像呈现在顶部(甚至不是图钉) (2)位于滚动查看器下方的元素(在xaml中)正确地呈现在地图的顶部!
谢谢
答案 0 :(得分:1)
只是不要将地图放在滚动查看器中。
这也可以防止在应用内滚动的问题。
答案 1 :(得分:1)
好的,我终于找到了一个很好的解决方法,让它看起来很棒。 这是诀窍:
ONE。我们通过将以下行添加到page / usercontrol的构造函数来禁用bing map tile图像:
map.Mode.Content.Visibility = System.Windows.Visibility.Collapsed;
TWO。在地图控件之前,我们添加一个与地图控件具有相同宽度和高度的元素:
<ScrollViewer>
<Grid>
<Image .../>
<map:Map .../>
</Grid>
<ListBox ... />
</ScrollViewer>
THREE。现在我们从“Bing静态地图API”为Image元素构建一个BitmapImage: http://msdn.microsoft.com/en-us/library/ff701724.aspx
var url = "<bing static map api url for my location and zoom level - without any pushpin>";
var uri = new Uri(url);
imgStaticMap.Source = new BitmapImage(uri);
这样:
答案 2 :(得分:0)
我将JeffWilcox.Maps
组件用于类似目的。这个静态映射在ScrollViewer中运行良好。