DoubleAnimation - 旋转图像

Jer*_*rts 1 c# winrt-xaml windows-phone-8.1

在Windows Phone 8.0 Silverlight中,我可以在我的XAML页面中拍摄图像,并使用以下Storyboard将其完全旋转一次.

<Storyboard x:Name="rotate_searching_image">
    <DoubleAnimation AutoReverse="False"                             
        Duration="0:0:10"
        From="0"
        RepeatBehavior="1x"
        Storyboard.TargetName="searching_image"
        Storyboard.TargetProperty="Angle"
        To="360" />
</Storyboard>
Run Code Online (Sandbox Code Playgroud)

我正在尝试在我的新Windows Phone 8.1运行时应用程序中执行相同的操作,但是我收到一条错误消息,指出Angle无法找到该属性.如果我更改TargetPropertyto Opacity和更新From以及To适当的值,一切正常.

我看了看UIElement,找不到任何让我设置角度的属性或方法.

任何帮助,将不胜感激.

Eld*_*iev 5

既没有UIElement也FrameworkElement没有Angle财产.您需要将动画应用于a的Angle属性RotateTransform.

首先,您需要创建一个转换对象:

<Image x:Name="searching_image">
    <Image.RenderTransform>
        <RotateTransform/>
    </Image.RenderTransform>
</Image>
Run Code Online (Sandbox Code Playgroud)

然后改为TargetProperty:

<Storyboard x:Name="rotate_searching_image">
    <DoubleAnimation AutoReverse="False"                             
        Duration="0:0:10"
        From="0"
        RepeatBehavior="1x"
        Storyboard.TargetName="searching_image"
        Storyboard.TargetProperty="(UIElement.RenderTransform).(RotateTransform.Angle)"
        To="360" />
</Storyboard>
Run Code Online (Sandbox Code Playgroud)