Nasıl yapılır: Metne Animasyon Uygulama
Animasyonlar, uygulamanıza metnin görünümünü ve görünümünü değiştirebilir. Aşağıdaki örneklerde, bir denetimde metnin görüntülenmesini etkileyen farklı animasyon türleri TextBlock vardır.
Örnek
Aşağıdaki örnek, metin DoubleAnimation bloğu genişliğine animasyon ekleme için kullanır. Genişlik değeri, 10 saniyelik bir süre boyunca metin bloğu genişliğinden 0'a değişir ve genişlik değerlerini tersine çevirebilir ve devam eder. Bu animasyon türü bir silme etkisi oluşturur.
<TextBlock
Name="MyWipedText"
Margin="20"
Width="480" Height="100" FontSize="48" FontWeight="Bold" Foreground="Maroon">
This is wiped text
<!-- Animates the text block's width. -->
<TextBlock.Triggers>
<EventTrigger RoutedEvent="TextBlock.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="MyWipedText"
Storyboard.TargetProperty="(TextBlock.Width)"
To="0.0" Duration="0:0:10"
AutoReverse="True" RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</TextBlock.Triggers>
</TextBlock>
Aşağıdaki örnek, metin DoubleAnimation bloğunda opaklık animasyonu yapmak için kullanır. Opaklık değeri 5 saniyelik bir süre boyunca 1,0'dan 0'a değişir ve sonra opaklık değerlerini tersine çevirerek devam eder.
<TextBlock
Name="MyFadingText"
Margin="20"
Width="640" Height="100" FontSize="48" FontWeight="Bold" Foreground="Maroon">
This is fading text
<!-- Animates the text block's opacity. -->
<TextBlock.Triggers>
<EventTrigger RoutedEvent="TextBlock.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="MyFadingText"
Storyboard.TargetProperty="(TextBlock.Opacity)"
From="1.0" To="0.0" Duration="0:0:5"
AutoReverse="True" RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</TextBlock.Triggers>
</TextBlock>
Aşağıdaki diyagram, denetimin tarafından tanımlanan 5 saniyelik aralık boyunca opaklığını olarak TextBlock 1.00 değiştirme etkisini 0.00 Duration gösterir.

Aşağıdaki örnek, metin ColorAnimation bloğun ön plan rengine animasyonu yapmak için bir kullanır. Ön plan renk değeri, 5 saniyelik bir süre boyunca bir renkten ikinci renge değişir ve ardından renk değerlerini tersine çevirebilir ve devam eder.
<TextBlock
Name="MyChangingColorText"
Margin="20"
Width="640" Height="100" FontSize="48" FontWeight="Bold">
This is changing color text
<TextBlock.Foreground>
<SolidColorBrush x:Name="MySolidColorBrush" Color="Maroon" />
</TextBlock.Foreground>
<!-- Animates the text block's color. -->
<TextBlock.Triggers>
<EventTrigger RoutedEvent="TextBlock.Loaded">
<BeginStoryboard>
<Storyboard>
<ColorAnimation
Storyboard.TargetName="MySolidColorBrush"
Storyboard.TargetProperty="Color"
From="DarkOrange" To="SteelBlue" Duration="0:0:5"
AutoReverse="True" RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</TextBlock.Triggers>
</TextBlock>
Aşağıdaki örnekte metin bloğu DoubleAnimation döndürülebilir. Metin bloğu, 20 saniyelik bir süre boyunca tam döndürme gerçekleştirir ve ardından döndürmeyi yinelemeye devam eder.
<TextBlock
Name="MyRotatingText"
Margin="20"
Width="640" Height="100" FontSize="48" FontWeight="Bold" Foreground="Teal"
>
This is rotating text
<TextBlock.RenderTransform>
<RotateTransform x:Name="MyRotateTransform" Angle="0" CenterX="230" CenterY="25"/>
</TextBlock.RenderTransform>
<!-- Animates the text block's rotation. -->
<TextBlock.Triggers>
<EventTrigger RoutedEvent="TextBlock.Loaded">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation
Storyboard.TargetName="MyRotateTransform"
Storyboard.TargetProperty="(RotateTransform.Angle)"
From="0.0" To="360" Duration="0:0:10"
RepeatBehavior="Forever" />
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</TextBlock.Triggers>
</TextBlock>