2015-09-08 204 views
1

在Windows Phone 8.0 Silverlight中,我將能夠在我的XAML頁面中拍攝一張圖像,並使用以下Storyboard將其完全旋轉一次。DoubleAnimation - 旋轉圖像

<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> 

我試圖做同樣的事情在我的新的Windows Phone 8.1運行時應用程序,但我得到一個錯誤說的財產Angle無法找到。如果我將TargetProperty更改爲Opacity並將FromTo更新爲適當的值,則一切正常。

我查看了UIElement,找不到任何可讓我設置角度的屬性或方法。

任何幫助,將不勝感激。

回答

5

UIElementFrameworkElement都沒有Angle屬性。您需要將動畫應用於RotateTransformAngle屬性。

首先,你需要創建一個轉換對象:

<Image x:Name="searching_image"> 
    <Image.RenderTransform> 
     <RotateTransform/> 
    </Image.RenderTransform> 
</Image> 

然後改變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> 
+0

謝謝。它旋轉但看起來像圍繞左上角旋轉。它可以圍繞圖像的中心旋轉嗎?這是我看到的。 http://imgur.com/8pLnOgs –

+0

沒關係,在Image上設置'''RenderTransformOrigin =「0.5,0.5」'''使它工作。謝謝! –