使用的ScrollViewer图像捏缩放,不断捕捉留在平底锅(Using ScrollViewer

2019-08-03 17:29发布

我试图用一个XAML的ScrollViewer为“便宜”添加捏缩放到的图像。 然而,问题是,在图像周围平移时,不断捕捉到最左边。 如果我向右拉,它看起来不错,但第二次我释放的形象,并推到左边。

这个问题只持续水平 - 垂直平移,它工作正常。

我抽象这个最简单的测试案例,它仍然存在。 我的XAML代码如下:

    <ScrollViewer>
        <Image Source="http://i.imgur.com/1WlGT.jpg" />
    </ScrollViewer>

任何帮助表示赞赏。

Answer 1:

我已经解决了这一点。

问题是,你必须explicityl集Horizo​​ntalScrollBarVisibility为true。

<ScrollViewer x:Name="scrollViewer" 
                  VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto" 
                  ZoomMode="Enabled">
        <Image Source="http://i.imgur.com/1WlGT.jpg" />
    </ScrollViewer>


Answer 2:

只是什么米哈尔Strzalkowski在你的答案低于他的评论,这是图像提及可能的解决方案示意图示于全尺寸(在容器边界不恰当)。 在XAML快速修复使用具有的ElementName路径 绑定

<ScrollViewer x:Name="SV_ImageZoom"           
              MaxZoomFactor="3"
              MinZoomFactor="1"
              ZoomMode="Enabled"                          
              HorizontalScrollBarVisibility="Auto"
              VerticalScrollBarVisibility="Auto">
    <Image Source="http://i.imgur.com/1WlGT.jpg"
           Width="{Binding Path=ViewportWidth, ElementName=SV_ImageZoom}" />
</ScrollViewer>


文章来源: Using ScrollViewer for image pinch-zoom, keeps snapping left on pan