我在控制模板上设置了以下数据触发器
<DataTrigger Binding="{Binding Path=IsDragged}"
Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard Storyboard="{StaticResource Active}" />
</DataTrigger.EnterActions>
<DataTrigger.ExitActions>
<BeginStoryboard Storyboard="{StaticResource Unactive}" />
</DataTrigger.ExitActions>
</DataTrigger>
一般情况下,它会至少发射一次(并非总是)并且在某些时候会停止。一些额外的有趣的说明:
编辑: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>
答案 0 :(得分:1)
只是一个有根据的猜测,但我之前遇到过这样的事情,事实证明我需要在开始另一个故事板之前停止每个故事板,因为它们彼此冲突。
尝试向DataTrigger添加两个StopStoryboard操作,一个用于停止活动情节提要,另一个用于停止无效故事板。