2013-09-27 47 views
1

我正在開發Windows手機遊戲appsand我需要在某些事件上對多個按鈕設置動畫,例如Page_loaded。我能做到的是,如何在Windows Phone 8中動畫多個按鈕

<Storyboard Storyboard.TargetName="scaButton" Storyboard.TargetProperty="Angle" > 
      <DoubleAnimation Storyboard.TargetProperty="ScaleY" 
        From="-1" To="1"               
        BeginTime="0:0:0" 
        Duration="0:0:0.5" 
        AutoReverse="False" /> 
     </Storyboard> 

,並在一個單一的按鈕XAML

<Button Height="100" Width="200" Margin="10,495,270,103" Content="{Binding Path=ListOfValues[0]}" RenderTransformOrigin="0.5,0.5" Click="Button_Click"> 
      <Button.RenderTransform> 
       <ScaleTransform x:Name="scaButton" ScaleX="1" ScaleY="1" CenterX="50" CenterY="25" /> 
      </Button.RenderTransform> 
     </Button> 

但問題是我怎麼把它定義爲多個按鈕。我希望所有的按鈕將在同一時間翻轉動畫。但是,我如何實現它?

請大家幫忙。 在Windows Phone <Style.Triggers>也不存在。

+0

您必須爲每個按鈕創建storyborad。因爲無法將多個目標設置爲一個storyborad。 –

+0

@MuhammadUmar這是我實現的想法,但沒有一個解決方案可以同時爲所有按鈕設置動畫效果,因爲所有按鈕的動畫效果都是相同的?任何想法如何實現按鈕的翻轉動畫? – Debhere

回答

2

您可以通過設置的TargetName的DoubleAnimation是

<Grid.Resources> 
    <Storyboard x:Name="FlipButtonStory"> 
     <DoubleAnimation Storyboard.TargetName="scaButton1" 
       Storyboard.TargetProperty="ScaleY" 
       From="-1" To="1"               
       BeginTime="0:0:0" 
       Duration="0:0:0.5" 
       AutoReverse="False" /> 
     <DoubleAnimation Storyboard.TargetName="scaButton2" 
       Storyboard.TargetProperty="ScaleY" 
       From="-1" To="1"               
       BeginTime="0:0:0" 
       Duration="0:0:0.5" 
       AutoReverse="False" /> 
     <DoubleAnimation Storyboard.TargetName="scaButton3" 
       Storyboard.TargetProperty="ScaleY" 
       From="-1" To="1"               
       BeginTime="0:0:0" 
       Duration="0:0:0.5" 
       AutoReverse="False" /> 
    </Storyboard> 
<Grid.Resouces> 

內,您可以通過調用BeginStoryboard方法開始的故事做到這一點。

FlipButtonStory.BeginStoryboard(); 
+0

感謝您的更新,但通過這個答案,我才知道沒有適用於頁面中所有按鈕的單一解決方案。反正這工作正常。只有我需要添加的是 ' – Debhere

相關問題