0
<DataTemplate>
<StackPanel Name="stack" Background="PaleTurquoise">
<Grid>
<Slider Name="sld" Value="{Binding TimeLeft}" />
</Grid>
</StackPanel>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding ElementName=sld, Path=Value}" Value="0">
<DataTrigger.EnterActions>
<BeginStoryboard Name="flash">
<Storyboard TargetName="stack" Storyboard.TargetProperty="Background.(SolidColorBrush.Color)">
<ColorAnimation From="MediumSpringGreen" To="Crimson" Duration="0:0:0.1" AutoReverse="True" RepeatBehavior="0:0:5"/>
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<RemoveStoryboard BeginStoryboardName="flash"/>
</DataTrigger.ExitActions>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
這是我的報警應用程序內xaml的減少版本。當滑塊的值達到0時,將觸發ColorAnimation,該動畫將包含滑塊的StackPanel的背景進行動畫處理。如何在ColorAnimation在DataTrigger內結束後恢復到以前的顏色?
但是我希望背景的顏色在閃爍結束時恢復到以前的值(PaleTurquoise)。我如何在xaml中完成此操作?
作爲進一步的問題,即使我的ViewModel中的TimeLeft在初始化時爲0,我如何才能在應用程序第一次加載時不會觸發DataTrigger?