如何在加载MainWindow时为其自动设置动画

gau*_*021 0 c# wpf animation mainwindow

我对wpf很新.我想在MainWindow上显示一个淡入淡出的动画,就在屏幕上显示.这可能吗?请帮帮我

Roh*_*ats 6

您可以申请StoryBoard窗口loaded事件以使窗口淡入淡出.这对你有用 -

<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>
Run Code Online (Sandbox Code Playgroud)

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

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