我在控制模板上设置了以下数据触发器
<DataTrigger Binding="{Binding Path=IsDragged}"
Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard Storyboard="{StaticResource Active}" />
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard Storyboard="{StaticResource Unactive}" />
</DataTrigger.ExitActions>
</DataTrigger>
通常它会至少触发一次(不总是)并且在某个时候会停止。一些额外的有趣注释:
- 在 MultiDataTrigger 中设置了相同的属性,此触发器将始终触发
- 在另一个触发器中引用了相同的故事板,它们在此触发器失败后继续运行
编辑: MultiDataTriggers 设置如下:
<MultiDataTrigger>
<MultiDataTrigger.Conditions>
<Condition Binding="{Binding Path=IsActive}"
Value="True" />
<Condition Binding="{Binding Path=IsDragged}"
Value="False" />
<Condition Binding="{Binding Path=IsInCart}"
Value="False" />
</MultiDataTrigger.Conditions>
<MultiDataTrigger.EnterActions>
<BeginStoryboard x:Name="ShowTag_BeginStoryboard"
Storyboard="{StaticResource ShowTag}" />
</MultiDataTrigger.EnterActions>
<MultiDataTrigger.ExitActions>
<BeginStoryboard x:Name="HideTag_BeginStoryboard"
Storyboard="{StaticResource HideTag}" />
</MultiDataTrigger.ExitActions>
</MultiDataTrigger>