【问题标题】:WPF Change Propery after Storyboard has Run故事板运行后 WPF 更改属性
【发布时间】: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 并停止情节提要,但我想知道是否有办法告诉情节提要完成但将高度保留为新值?

注意:故事板可能会在此之后再次重新运行,所以我不认为完全删除故事板是一种选择。

【问题讨论】:

标签: wpf storyboard


【解决方案1】:
myrect.BeginAnimation(HeightProperty, null);
myrect.Width = 0;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-02
    相关资源
    最近更新 更多