在Windows 8应用程序中将Rectangle的高度设置为0的动画

时间:2013-02-20 15:26:08

标签: xaml windows-8 microsoft-metro

在win8应用程序中,我正在尝试使用小动画来制作Rectangle 0的高度

像Opacity这样的属性工作正常,但我无法在高度或宽度上添加动画。

<Page.Resources>
    <Storyboard x:Name="NewStory">
        <DoubleAnimation Storyboard.TargetName="MyRectangle"  Storyboard.TargetProperty="Height" From="100" To="0" Duration="0:0:1" />
    </Storyboard>
</Page.Resources> 

<Rectangle Name="MyRectangle" Width="100" Height="100" Tapped="MyRectangle_OnTapped">

private void MyRectangle_OnTapped(object sender, TappedRoutedEventArgs e)
{
    NewStory.Begin();
}

1 个答案:

答案 0 :(得分:9)

当您尝试更改影响布局的内容时,此更改的动画称为依赖动画,默认情况下不起作用。为了能够使用它,您应该将EnableDependentAnimation属性设置为true。

<Storyboard x:Name="NewStory">
    <DoubleAnimation Storyboard.TargetName="MyRectangle"  Storyboard.TargetProperty="Height" From="100" To="0" Duration="0:0:1" EnableDependentAnimation="true" />
</Storyboard>