2012-06-02 76 views
4

在我的地鐵應用程序中,我有一個文本塊,如果if語句爲true,我會將動畫效果設置爲100%不透明度,然後返回0%不透明度。我會如何去做這件事?Windows 8 Metro TextBlock動畫

我已經做了很多環視,但所有的動畫教程都讓我感到困惑。

回答

5

你可以做這樣的事情在C#中從0到1的動畫:

var sb = new Storyboard(); 
opacityAnimation = new DoubleAnimation 
{ 
    From = 0.0, 
    To = 1.0, 
    Duration = TimeSpan.FromSeconds(1.5) 
}; 
Storyboard.SetTarget(opacityAnimation, textBlock); 
Storyboard.SetTargetProperty(opacityAnimation, "Opacity"); 
sb.Children.Add(opacityAnimation); 
sb.Begin(); 

你也可以在XAML定義它:

<Storyboard 
    x:Name="fadeInStoryboard" 
    Storyboard.TargetName="myTextBlock" 
    Storyboard.TargetProperty="Opacity"> 
    <DoubleAnimation 
     From="0" 
     To="1.0" 
     Duration="0:0:1.5" /> 
</Storyboard> 

- 然後在代碼中啓動它背後:

fadeInStoryboard.Begin(); 

根據您的情況,它可能是理想的使用視覺狀態和定義故事板作爲視覺s泰特轉換。