您的位置:首页 > 其它

关于WPF XAML 中 Trigger的反向ExitActions

2014-03-31 10:24 489 查看
触发器,顾名思义,就是当满足一定条件时,会触发一些操作,比如:改变控件的透明度,显隐,宽高等等,触发器本身做了一些操作,就是触发器触发条件不符合的时候,会自动把在触发器中更改的属性还原。但,并不是所有的属性更改后,触发器都会自动帮助我们还原,比如:在触发器中满足条件时执行一段动画,要求动画一直执行,当条件不满足条件时,终止动画,此时,触发器自身就满足不了自动关闭动画。解决办法就是手动书写当条件不满足时的动作。

书写如下:

<ControlTemplate.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard AutoReverse="True" x:Name="beginstoryname1">
<DoubleAnimation Storyboard.TargetProperty="RenderTransform.Angle" To="-5" Duration="0:0:0.5" BeginTime="0:0:0"/>
</BeginStoryboard>
</Trigger.EnterActions>
<Trigger.ExitActions>
<StopStoryboard BeginStoryboardName="beginstoryname1"/>
</Trigger.ExitActions>
</Trigger>
</ControlTemplate.Triggers>


总结:

针对所有触发器不能自动还原的操作,手动书写不满足条件的操作即可法解决
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: