Igo*_*man 5 c# xaml windows-phone-8 windows-phone-8.1
我有一个带有FlipView的Windows Phone 8.1应用程序.每个FlipView项目代表一个杂志页面(PDF页面呈现为具有一些叠加的位图).
我需要启用pinch来缩放所有页面.我的FlipView ItemTemplate看起来像这样
<DataTemplate
x:Key="SinglePageTemplate">
<ScrollViewer
ZoomMode="Enabled">
<Grid>
<ProgressRing
HorizontalAlignment="Center"
VerticalAlignment="Center"
IsActive="{Binding IsRendered, Converter={StaticResource BooleanNegateConverter}}" />
<Image
Source="{Binding Bitmap}"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch">
</Image>
</Grid>
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
问题是当我缩小页面并尝试将其向右移动时,它总是"跳回"到左边.
这是一个显示问题的视频:https://dl.dropboxusercontent.com/u/73642/fv.avi
任何想法为什么以及如何解决它?
在滚动查看器中,您必须手动启用滚动条可见性和模式
<ScrollViewer ZoomMode="Enabled"
HorizontalScrollBarVisibility="Visible"
VerticalScrollBarVisibility="Visible"
HorizontalScrollMode="Enabled"
VerticalScrollMode="Enabled">
<Grid>
<ProgressRing
HorizontalAlignment="Center"
VerticalAlignment="Center"
IsActive="{Binding IsRendered, Converter={StaticResource BooleanNegateConverter}}" />
<Image
Source="{Binding Bitmap}"
VerticalAlignment="Stretch"
HorizontalAlignment="Stretch">
</Image>
</Grid>
</ScrollViewer>
Run Code Online (Sandbox Code Playgroud)
您还可以选择设置 Max/MinZoomFactor 以防止过度缩放