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);
        }
    }
相关推荐
我是苏苏1 天前
WPF开发01:基础控件及常用模板篇
开发语言·c#·html·wpf
dalong102 天前
WPF:3D顶点共享与法线设置对光照效果的影响
3d·wpf
柔蘭2 天前
WPF中的CommunityToolkit.Mvvm框架
wpf
aGdF8E3gQ3 天前
【Application Insights】采样率对Function App日志收集的影响和解决方法
python·flask·wpf
程序员-Benothing3 天前
如何实现高并发系统订单30分钟自动关闭?
开发语言·c#·wpf
一水4 天前
Redis实战:一个AI工作流系统里的五个应用场景,从传参到限流的完整链路
数据库·redis·wpf
dalong104 天前
WPF:3D甜甜圈
3d·c#·wpf·甜甜圈
别催小唐敲代码4 天前
ROS2从入门到实战:去中心化机器人操作系统详解
wpf·ros2
脚踏实地皮皮晨5 天前
003006001_WrapPanel控件
开发语言·c#·.net·wpf·visual studio
脚踏实地皮皮晨5 天前
003005002_WPF StackPanel 基类官方类定义逐行深度解析
开发语言·windows·算法·c#·wpf·visual studio