0
我想爲ContentControl的Foreground顏色設置動畫效果。WinRT前景動畫
<VisualStateGroup
x:Name="SelectionStates">
<VisualState
x:Name="Unselected">
<Storyboard>
<DoubleAnimation
Duration="0"
Storyboard.TargetName="UnselectedContent"
Storyboard.TargetProperty="Opacity"
To="1" />
<DoubleAnimation
Duration="0"
Storyboard.TargetName="Content"
Storyboard.TargetProperty="Opacity"
To="0" />
</Storyboard>
</VisualState>
<VisualState
x:Name="Selected">
<Storyboard>
<DoubleAnimation
Duration="0"
Storyboard.TargetName="Content"
Storyboard.TargetProperty="Opacity"
To="1" />
<DoubleAnimation
Duration="0"
Storyboard.TargetName="UnselectedContent"
Storyboard.TargetProperty="Opacity"
To="0" />
</Storyboard>
</VisualState>
<ContentControl
x:Name="Content"
ContentTemplate="{TemplateBinding ContentTemplate}"
Foreground="{StaticResource CalendarDayForegroundSelected}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Margin="{TemplateBinding Padding}"
IsTabStop="False" >
<ContentControl.Content>
<TextBlock Text="{TemplateBinding Content}" />
</ContentControl.Content>
</ContentControl>
<ContentControl
x:Name="UnselectedContent"
ContentTemplate="{TemplateBinding ContentTemplate}"
Foreground="{StaticResource CalendarDayForeground}"
HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
Margin="{TemplateBinding Padding}"
IsTabStop="False" >
<ContentControl.Content>
<TextBlock Text="{TemplateBinding Content}" />
</ContentControl.Content>
</ContentControl>
這是我做的方式。不幸的是,我需要兩次使用不同名稱的ContentControl。有沒有更好的方法來做到這一點?
我用ColorAnimation嘗試過,但沒有成功。
感謝 達尼