我正在尝试使用天气中心将天气叠加添加到WPF中的bing地图上。我已经在一个Web应用程序中完成了这个,我尝试使用类似的逻辑,它有点工作,但似乎我有一个bug。每次有视图更改并清除旧视图时,我基本上都会使用新的叠加层,使用bing具有的{quadkey}系统和天气中心工作。这在Web应用程序中工作,并且有点工作,但瓷砖一直闪烁。看起来瓷砖是针对不同的缩放级别而无法决定选择哪个?我不太确定。谢谢你的帮助。
public partial class MainWindow : Window
{
Microsoft.Maps.MapControl.WPF.MapTileLayer tileLayer;
private double tileOpacity = .7;
public MainWindow()
{
InitializeComponent();
MapTileOverlay.ViewChangeEnd += new EventHandler<Microsoft.Maps.MapControl.WPF.MapEventArgs>(MapTileOverlay_ViewChangeEnd);
}
void MapTileOverlay_ViewChangeEnd(object sender, Microsoft.Maps.MapControl.WPF.MapEventArgs e)
{
MapTileLayer.Children.Clear();
tileLayer = new Microsoft.Maps.MapControl.WPF.MapTileLayer();
Microsoft.Maps.MapControl.WPF.TileSource tileSource = new Microsoft.Maps.MapControl.WPF.TileSource("http://datacloud.wxc.com/?type=tile&bing={quadkey}&datatype=forecast&var=Clouds&time=now&vs=0.9&passkey=our_key");
tileLayer.TileSource = tileSource;
tileLayer.Opacity = tileOpacity;
MapTileOverlay.Children.Add(tileLayer);
}
}