DataTemplate中的WP7捏合和缩放图像

时间:2011-02-25 22:23:38

标签: c# silverlight silverlight-4.0 windows-phone-7

我看过this ping /缩放图像的例子,看起来非常简单。

我遇到的问题是我的图像是我的数据透视控件的数据模板的一部分,我无法访问转换对象。

<DataTemplate>
    <Image Name="displayImage" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Source="{Binding photo_link}" RenderTransformOrigin="0.5, 0.5" CacheMode="BitmapCache">
        <Image.RenderTransform>
            <CompositeTransform x:Name="transform" />
        </Image.RenderTransform>
        <toolkit:GestureService.GestureListener>
            <toolkit:GestureListener PinchDelta="OnPinchDelta" PinchStarted="OnPinchStarted" />
        </toolkit:GestureService.GestureListener>
    </Image>
</DataTemplate>

在此方法中,transform无法解析。

private void OnPinchStarted(object sender, PinchStartedGestureEventArgs e)
{
    initialAngle =  transform.Rotation;
    initialScale = transform.ScaleX;
}

任何想法??

谢谢!

1 个答案:

答案 0 :(得分:1)

发件人应该是收听者所附加的图片:

var image = sender as Image;
var transform = image.RenderTransform as CompositeTransform;

initialAngle = transform.Rotation;
initialScale = transform.ScaleX;