我想在动画完成时收到通知。
但是,当我应用以下代码时,出现以下错误
“无法在样式中的目标标签上指定事件 'Completed'。请改用 EventSetter。”
<Style x:Key="CredentialEntryListViewItemStyle" TargetType="{x:Type ListViewItem}" BasedOn="{StaticResource alternatingListViewItem}">
<Setter Property="HorizontalContentAlignment" Value="Stretch" />
<Setter Property="VerticalContentAlignment" Value="Stretch" />
<Style.Triggers>
<DataTrigger Binding="{Binding IsDuplicated}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<ColorAnimation AutoReverse="True"
RepeatBehavior="2x"
Completed="OnColorAnimationCompleted"
Storyboard.TargetProperty="Foreground.(SolidColorBrush.Color)"
To="Orange" Duration="0:0:0.3"/>
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
</DataTrigger>
</Style.Triggers>
</Style>
最佳答案
我认为问题在于 WPF 无法“巧妙地”将 OnColorAnimationCompleted 事件连接到 ListViewItem 上,因为它无法知道 ListViewItem 的类型是什么,因此它无法将 OnColorAnimationCompleted 订阅到 Completed 事件。
编辑:你能在退出 Action 中做任何你需要做的事情吗???
关于WPF - 颜色动画完成事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1506725/