我正在为Windows Phone 8开发一个与图像相关的应用程序。完成所需的图像处理后,我当前在“图像”工具箱项目中显示输出,这似乎对我有用。 这里的编码是在C#+ XAML中完成的。
现在我想改进UI并使输出图像可缩放(使用捏缩放)。我想知道如何创建这样一个可以缩放的UI元素。
我知道这可能是许多应用开发者的常见要求。但我一直无法找到相同的参考资料。
答案 0 :(得分:5)
下载windows phone toolkit并使用GestureService.GestureListener
的Xaml:
...
xmlns:tk="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
...
<Image Source="myImage.jpg" RenderTransformOrigin="0.5, 0.5" CacheMode="BitmapCache">
<Image.RenderTransform>
<CompositeTransform x:Name="transform" />
</Image.RenderTransform>
<tk:GestureService.GestureListener>
<tk:GestureListener PinchStarted="OnPinchStarted" PinchDelta="OnPinchDelta" />
</tk:GestureService.GestureListener>
</Image>
代码背后:
double initialScale = 0;
private void OnPinchStarted(object sender, PinchStartedGestureEventArgs e) {
initialScale = transform.ScaleX;
}
private void OnPinchDelta(object sender, PinchGestureEventArgs e) {
transform.ScaleX = initialScale * e.DistanceRatio;
transform.ScaleY = initialScale * e.DistanceRatio;
}