WPF显示初始界面--SplashScreen

WPF显示初始界面--SplashScreen

前言

WPF应用程序的运行速度快,但并不能在瞬间启动。当第一次启动应用程序时,会有一些延迟,因为公共语言运行时(CLR)首先需要初始化.NET环境,然后启动应用程序。

对于WPF中大型程序启动时需要较长时间加载底层控件而产生的空隙可以由加载界面来填充,以此减少软件空白期,增加交互体验

一、界面操作

将Build Action修改为SplashScreen

二、代码操作

App.xaml.cs中重写OnStartUp方法

Resources 为存放该png文件的文件夹。
注意: 图片的 生成操作属性 设置为 "Resources "

csharp 复制代码
    /// <summary>
    /// Interaction logic for App.xaml
    /// </summary>
    public partial class App : Application
    {
        protected override void OnStartup(StartupEventArgs e)
        {
            SplashScreen splashScreen = new SplashScreen("/Resource/splashscreen.png");
            splashScreen.Show(false);
            
 			//上面Show()方法中设置为true时,程序启动完成后启动图片就会自动关闭,
            //设置为false时,启动图片不会自动关闭,需要使用下面一句设置显示时间,例如2s
            splashScreen.Close(TimeSpan.FromSeconds(2));
            base.OnStartup(e);
        }
    }
相关推荐
c#上位机1 天前
wpf之ControlTemplate
wpf
kyranhan3 天前
WPF,窗口拖动事件与窗口内控件点击事件
wpf
孟婆来包棒棒糖~3 天前
SpringCloude快速入门
分布式·后端·spring cloud·微服务·wpf
Humbunklung4 天前
C# WPF 实现读取文件夹中的PDF并显示其页数
pdf·c#·wpf·npoi·gemini·itext
wangnaisheng4 天前
【WPF】NumericUpDown的用法
wpf
步、步、为营4 天前
.NET 9 RC1 正式发布
.net·wpf
界面开发小八哥6 天前
界面组件DevExpress WPF中文教程:Grid - 如何过滤节点?
.net·wpf·界面控件·devexpress·ui开发
I'mSQL6 天前
C#与WPF使用mvvm简单案例点击按钮触发弹窗
开发语言·c#·wpf
百锦再7 天前
WPF依赖属性深度解析:从原理到高级应用
wpf·依赖·绑定·验证·net·强制
✎ ﹏梦醒͜ღ҉繁华落℘7 天前
WPF高级学习(一)
学习·wpf