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);
        }
    }
相关推荐
上海物联网19 小时前
Prism Regions-自定义区域适配器实现开发者将任意 WPF 控件转换为可动态加载视图的区域容器
面试·wpf
Aevget2 天前
DevExpress WPF中文教程:Data Grid - 如何绑定到有限制的自定义服务(四)?
wpf·界面控件·devexpress·ui开发·.net 10
棉晗榜2 天前
wpf DataGrid控制列是否显示,DataGrid列不会触发Visibility的转换器
wpf
超级种码2 天前
Redis:Redis高可用——副本、哨兵和集群
数据库·redis·wpf
棉晗榜2 天前
wpf给Border添加闪烁边框
wpf
Derrick_itRose2 天前
DevExpress笔记WPF(2)Data Editors and Controls(基础编辑器)
笔记·编辑器·wpf
He BianGu2 天前
【笔记】WPF的Binding中AsyncState的使用方式
笔记·wpf
曹天骄3 天前
Cloudflare KV 使用教程(基于 Wrangler 项目)
wpf
摘星编程3 天前
Flutter for OpenHarmony 实战:Dialog 对话框详解
flutter·wpf
ou.cs3 天前
WPF TreeView 自动展开所有节点:附加行为(Attached Behavior)保姆级实现教程
c#·.net·wpf