Procedura: attivare un'animazione quando il valore di una proprietà viene modificato
Aggiornamento: novembre 2007
This example shows how to use a Trigger to start a Storyboard when a property value changes. È possibile utilizzare Trigger all'interno di Style, ControlTemplate o DataTemplate.
Esempio
Nell'esempio seguente viene utilizzato Trigger per animare Opacity di Button quando la relativa proprietà IsMouseOver diventa true.
<!-- PropertyTriggerExample.xaml
Shows how to use property triggers to start animations. -->
<Page
xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
WindowTitle="Animate Properties with Storyboards">
<Page.Resources>
<Style x:Key="PropertyTriggerExampleButtonStyle" TargetType="{x:Type Button}">
<Setter Property="Opacity" Value="0.25" />
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity"
To="1" Duration="0:0:1" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Opacity"
To="0.25" Duration="0:0:1" />
</Storyboard>
</BeginStoryboard>
</Trigger.ExitActions>
</Trigger>
</Style.Triggers>
</Style>
</Page.Resources>
<StackPanel Margin="20">
<Button Style="{StaticResource PropertyTriggerExampleButtonStyle}">
Move the mouse over me.
</Button>
</StackPanel>
</Page>
Le animazioni applicate tramite oggetti Trigger di proprietà dimostrano un comportamento più complesso rispetto alle animazioni EventTrigger o a quelle avviate tramite i metodi Storyboard. Vengono fornite con animazioni definite da altri oggetti Trigger, ma possono essere combinate con animazioni EventTrigger e con animazioni attivate tramite metodi.
Vedere anche
Concetti
Cenni preliminari sulle tecniche di animazione delle proprietà
Cenni preliminari sugli storyboard