如何在WPF中创建动画消息横幅

时间:2010-05-07 23:18:21

标签: c# wpf animation

有关如何创建Web应用程序中使用的那些(通常为黄色)弹出式动画横幅(如stackoverflow FAQ)的任何指示?

1 个答案:

答案 0 :(得分:4)

我真的想给出答案“使用jQuery”,但由于这是WPF,我认为需要更好的东西。首先,我将在您的xaml文件中定义条形图所在的位置。我会做这样的事情:

<Window ...>
    <Grid>
        <Grid x:Name="DropDownBar" HorizontalAlignment="Stretch" Height="0">
            <Rectangle Fill="Orange" />
        </Grid>

        <!-- rest of your content here -->
    </Grid>
</Window>

要获得漂亮的动画效果,例如:

<Window.Resources>
    <Storyboard x:Key="LoadAnimation" Duration="0:0:3">
        <DoubleAnimation Storyboard.TargetName="DropDownBar" Storyboard.TargetProperty="Height" From="0" To="30" />
    </Storyboard>
</Window.Resources>

然后你只需要在页面加载时触发它:

<Window.Triggers>
    <EventTrigger RoutedEvent="Window.Loaded">
        <BeginStoryboard Storyboard="{StaticResource LoadAnimation}" />
    </EventTrigger>
</Window.Triggers>

我在这个框中输入了这个,所以这里和那里肯定会有一些拼写错误。但这基本上就是我的表现。另一种方法是固定高度,并将边距从-height移动到0。