【问题标题】:How to animate the MainWindow itself when it is loaded如何在加载时为 MainWindow 本身设置动画
【发布时间】:2013-04-06 19:15:43
【问题描述】:

我是 wpf 的新手。我想在 MainWindow 上应用淡入淡出动画,一旦它显示在屏幕上。这可能吗?请帮帮我

【问题讨论】:

  • 如果您只想展示一个启动画面 - 有更简单的方法 :) 您这样做的目的是什么?
  • 主要目的是创建一个淡入的窗口,然后让每个控件都落入它们的位置。:-)

标签: c# wpf animation mainwindow


【解决方案1】:

您可以在窗口loaded 事件上应用StoryBoard,以使您的窗口具有淡化外观。这应该对你有用 -

<Window.Triggers>
    <EventTrigger RoutedEvent="Window.Loaded">
        <BeginStoryboard>
            <Storyboard>
                <DoubleAnimation Storyboard.TargetProperty="(Window.Opacity)"
                                 From="0.0" To="1.0" Duration="0:0:1"
                                 AutoReverse="False"/>
            </Storyboard>
        </BeginStoryboard>
    </EventTrigger>
</Window.Triggers>

如果您不想在 XaML 中执行此操作,也可以在窗口 loaded 事件处理程序中的代码中执行此操作 -

    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        DoubleAnimation animation = new DoubleAnimation(0, 1, 
                                    (Duration)TimeSpan.FromSeconds(1));
        this.BeginAnimation(UIElement.OpacityProperty, animation);
    } 

【讨论】:

  • 谢谢..这很好用。你能告诉我如何使用 c# 代码而不是 XAML 来做到这一点吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-03
  • 2015-09-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多