我再次问这个,因为我之前的问题被错误地关闭了。
是否可以限制Bing Maps WPF控件的缩放?我的目标是防止用户放大太远,看到多个" worlds"并排平铺。
这不是与AJAX API相关的类似问题的副本。 AJAX API和WPF API不同,在许多方面功能完全不同。 Zoom似乎是其中之一,因为尝试实现AJAX解决方案(在我提出问题之前)是不成功的。
谢谢!
答案 0 :(得分:0)
似乎WPF控件还没有AJAX或SilverLight那么强大。必须手动完成许多事情......
您可以通过处理Map.MouseWheel事件来尝试强力逼近方法,并在达到阈值时限制缩放增加/减少
我正在尝试重新整理整个地图视图 - 处理这个问题很痛苦:)
答案 1 :(得分:0)
这样的事可能吗?
private void map_ViewChangeOnFrame(object sender, MapEventArgs e)
{
if (this.bingMap.ZoomLevel < ViewLogic.MinimumZoomLevel)
{
this.bingMap.SetView(this.previousFrameCenter, ViewLogic.MinimumZoomLevel);
e.Handled = true; // Do we need it???
}
else
{
this.previousFrameCenter = this.bingMap.Center;
}
if (this.DoUpdate())
{
// Avoiding "jerking" effect and updating only for certain zoom/pan deltas
this.UpdateModelViewPort();
}
}
答案 2 :(得分:0)
嗯,这对我来说没问题,没有任何图形副作用......
private void myMap_ViewChangeOnFrame(object sender, MapEventArgs e)
{
double z = myMap.ZoomLevel;
//Maximum Zoom 19.5
if (z > 19.5)
{
myMap.ZoomLevel = 19.5;
}
//Minimum Zoom 2.5
if (z < 2.5)
{
myMap.ZoomLevel = 2.5;
}
}