首页 > 其他分享 >.Net设置SplashScreen,在高DPI下不居中的解决方案

.Net设置SplashScreen,在高DPI下不居中的解决方案

时间:2023-07-31 15:16:32浏览次数:37  
标签:居中 设置 Net SplashScreen DPI 图片

.Net 设置 SplashScreen,在高 DPI 下不居中的解决方案

根据.Net 官方文档,设置图片类型的软件的启动屏幕非常简单,只需要将图片放在工程里,并将图片的生成操作设置为 SplashScreen 后即可。

但是这个办法在高 DPI 屏幕中没有适应,图片显示的位置不居中,对于强迫症来说会非常非常难受。查阅了很多官方文档和论坛后依然没有人给出在这个基础上去修正的方案。于是我们只能另辟蹊径。

这个问题有如下两个主流解决方案

  1. 创建一个 Dialog 作为启动界面,并设置定时器自动将窗口关闭。
  2. 使用 SplashScreen 类手动打开这个图片。

第一种显然是比较好的,因为通过自定义窗口吗,我们可以在启动界面中做任何事情,动画之类的东西是轻而易举。但是由于程序启动后窗口的创建时间较长,会导致双击程序后需要等一会儿才会出现启动界面,感官上不是特别好。

第二种的效果也只是放一张图片而已,但是速度会快很多,而且非常简单。

在 App.xaml.cs 中的 OnStartup 中引入 SplashScreen 即可。

protected override void OnStartup(StartupEventArgs e)
{
    SplashScreen sp = new SplashScreen("图片.png");
    sp.Show(true);
    base.OnStartup(e);
}

标签:居中,设置,Net,SplashScreen,DPI,图片
From: https://www.cnblogs.com/inexbot/p/17593449.html

相关文章

  • You must install or update .NET to run this application
    Youmustinstallorupdate.NETtorunthisapplication问题原因在使用.net的环境时,出现这个“Youmustinstallorupdate.NETtorunthisapplication”说明版本不符合系统默认式是2.0,3.0版本的,需要更新到5.0版本才行去官网下载符合自己的版本官网地址:https://do......
  • asp.net repeater控件
    1、ASP.NET数据控件解析2、在asp.net中怎么使用repeater控件动态绑定数据.绑成table形式的...3、c#asp.net里面的Repeater控件绑定数据具体怎么用啊?4、在asp.net中,关于Repeater控件的错误说法是?5、asp.net中怎样获取repeater中的数据ASP.NET数据控件解析1、ASP.Net......
  • .NET下数据库的负载均衡“经典方案”(大项目必备,建议收藏)
    【前言】本文讲述的“数据库负载均衡”方案,为市面上最经典(没有之一),由.NET界骨灰级大佬推出。采用该技术方案的大公司,一年省下了几个亿的支出。 【正文】支持.NetCore(2.0及以上) 与.NetFramework(4.5及以上)可以部署在Docker,Windows,Linux,Mac。为了演示数据库的负载......
  • 每个.NET开发都应掌握C#泛型的知识点
    C#泛型编程是.NETframework2.0的新特征,它提高了代码安全性和代码重用的问题。由于泛型必须指定类型,正确的使用可以避免了装箱拆箱的问题;使用了泛型后,可以将算法或组件泛型化,基于类型参数支持任意数据类型,从而提高了代码的重用性。C#泛型编程在C#是很重要的特性,建议.NET开发熟......
  • VB.NET and C# Comparison
    VB.NETandC#Comparison(vb.net与c#对比)//z2012-3-713:30:51PMIS2120@ImportsSystemNamespaceHello  ClassHelloWorld     OverloadsSharedSubMain(ByValargs()AsString)        DimnameAsString="VB.NET"        'See......
  • CAN转EtherNet/IP网关can协议是什么意思
    JM-EIP-CAN 是自主研发的一款ETHERNET/IP 从站功能的通讯网关。该产品主要功能是将各种CAN 总线和ETHERNET/IP 网络连接起来。本网关连接到ETHERNET/IP 总线中做为从站使用,连接到CAN 总线中根据节点号进行读写。技术参数ETHERNET/IP 技术参数网关做为ETHERNET/I......
  • .NET 下最快比较两个文件内容是否相同
    转自:.NETCORE下最快比较两个文件内容是否相同的方法-WAKU-博客园(cnblogs.com)本文因为未考虑磁盘缓存,结果不是很准确,更严谨的结果请参看本博文的续集最近项目有个需求,需要比较两个任意大小文件的内容是否相同,要求如下:项目是.NETCORE,所以使用C#进行编写比较方......
  • IIS创建网站报错 \\?\C:\Windows\inetsrv\config\applicationHost.config
    ​ ​​编辑​​编辑 现象:IIS创建不了网站,IIS配置没有发生改变 原因:服务器C盘无空间,释放空间后问题解决。​......
  • 001 新建Net Web API工程
    1、新建工程打开VS2022,点击新建项目,弹出创建新项目对话框,然后在项目模板处,选择C#、所有平台以及WebAPI,如下图所示。选择了下面的唯一模板,点击下一步,设置项目的名称、保存路径等。如下图所示。             点击下一步,可使用默认的配置,如下图所示。......
  • CAN转EtherNet/IP网关can协议的特点
    你是否曾经遇到过不同的总线协议难以互相通信的问题?捷米的JM-EIP-CAN网关为你解决了这个烦恼!捷米JM-EIP-CAN通讯网关是一款自主研发的设备,它能够将各种CAN总线和ETHERNET/IP网络连接起来,解决不同总线协议之间的通信障碍。作为ETHERNET/IP总线的从站,它可以连接到CAN总线中,根据节点......