Bing Maps WPF API - 限制缩放?

时间:2012-08-31 16:27:11

标签: wpf bing-maps

我再次问这个,因为我之前的问题被错误地关闭了。

是否可以限制Bing Maps WPF控件的缩放?我的目标是防止用户放大太远,看到多个" worlds"并排平铺。

是与AJAX API相关的类似问题的副本。 AJAX API和WPF API不同,在许多方面功能完全不同。 Zoom似乎是其中之一,因为尝试实现AJAX解决方案(在我提出问题之前)是不成功的。

谢谢!

3 个答案:

答案 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;
        }
    }