动画高度从50到10,但从30 wpf开始

时间:2016-08-17 12:56:15

标签: wpf animation

我有一个矩形我想设置高度:

<Rectangle Height="30" Width="10" Fill="Black" Margin="10,0,10,0">
     <Rectangle.Triggers>
          <EventTrigger RoutedEvent="Rectangle.Loaded">
               <BeginStoryboard>
                    <Storyboard>
                         <DoubleAnimation Storyboard.TargetProperty="(Rectangle.Height)" From="50" To="10" Duration="0:0:1" RepeatBehavior="Forever"/>
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Rectangle.Triggers>
</Rectangle>

这个效果很好我只希望矩形的初始起始高度为30.此代码覆盖高度并在开始动画时将其置于50

1 个答案:

答案 0 :(得分:2)

只需添加第二个动画。

    <Rectangle Height="30"
               Width="10"
               Fill="Black"
               Margin="10,0,10,0">
        <Rectangle.Triggers>
            <EventTrigger RoutedEvent="Rectangle.Loaded">
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation Storyboard.TargetProperty="(Rectangle.Height)"
                                         From="30"
                                         To="10"
                                         Duration="0:0:1"
                                         RepeatBehavior="1" />
                        <DoubleAnimation Storyboard.TargetProperty="(Rectangle.Height)"
                                         From="50"
                                         To="10"
                                         Duration="0:0:1"
                                         BeginTime="0:0:1"
                                         RepeatBehavior="Forever" />
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Rectangle.Triggers>
    </Rectangle>