【发布时间】:2017-10-18 23:12:25
【问题描述】:
我有下面这样触发的故事板;
Storyboard s = (Storyboard) myrect.FindResource("sb");
s.Begin();
-
<Storyboard BeginTime="0" Duration="Forever" x:Key="sb" >
<DoubleAnimation Storyboard.TargetName="myrect"
Storyboard.TargetProperty="Height" From="0" To="{Binding ElementName=myrect, Path=ActualHeight}"
Duration="0:0:0.2" BeginTime="0:0:0"/>
</Storyboard>
但是我怎样才能撤消这个(按下按钮)以便我可以设置myrect.Height = 0;?我知道这不起作用,因为动画仍在运行。我试过FillBehavior="Stop",但这会导致高度在动画结束时恢复为0。
我可以再次 FindResource 并停止情节提要,但我想知道是否有办法告诉情节提要完成但将高度保留为新值?
注意:故事板可能会在此之后再次重新运行,所以我不认为完全删除故事板是一种选择。
【问题讨论】:
-
将 FillBehavior 设置为 Stop 并添加一个 Completed 处理程序,将属性值设置为所需的值。
标签: wpf storyboard