今天在看《WPF编程宝典》时,看到了Application类,该类可以做很多事情,我认为比较实用的是显示初始化界面,因为之前有个项目在打开的时候要加载好多dll,非常耗时,让客户等的蛋疼,还好那个项目处在试用期,今天决定修改一下。  

  步骤如下:

1.为项目添加一个文件;

  2.在解决方案中(Solution Explore)选择该文件;

  3.在属性窗口将生成操作(Build Action)改为 SplashScreen;

  

  生成运行,通过。

  这样应该就完成了。其实我是在写博客的时候才发现这样就已经可以达到想要的效果了。我之前还跑去找Main()方法,把Main方法写在App.xaml.cs文件里,在Main方法中手动写SplashScreen 代码,最终也能实现效果,在这个过程中也有一点点收获,顺便把过程记录下来吧,以备复习。

  首先找到项目所在目录,打开obj/Debug/App.g.cs,会发现Main方法的定义:

  

  

 /// <summary>
/// Application Entry Point.
/// </summary>
[System.STAThreadAttribute()]
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
public static void Main() {
//这里就是初始化界面 效果
SplashScreen splashScreen = new SplashScreen("screen.jpg");
splashScreen.Show(true); WPFApplication.App app = new WPFApplication.App();
app.InitializeComponent();
app.Run();
}

  但是这个Main是自动生成的,如果想要再里面添加自己的代码,怎么办呢。网上有人说直接编写App.g.cs文件,我没试过,据说可行,但是下次打开项目,App.g.cs文件又要重新生成,这样很麻烦。

  解决办法就是,在我们项目的App.xml.cs文件编写代码,并且不去生成App.g.cs文件。

  操作如下:选中App.xaml,查看属性,将生成操作改成Page:

  

  生成,然后再去看obj/Debug/App.g.cs,发现不见了Main方法。

  此时,我们在项目中打开App.xaml.cs,添加如下代码:

  

        [STAThread()]
public static void Main()
{
//初始化界面时显示的图片
SplashScreen screen = new SplashScreen("Images/screen.jpg");
screen.Show(true); //在这里编写其他逻辑.............. WeaponrySystem.App app = new App();
app.InitializeComponent();
app.Run();
}

  当然,在Main方法中也可以添加其他逻辑代码,比如时间限制,硬件检测等。  

  参考:1.《WPF编程宝典》

       2.http://www.cnblogs.com/yigedaizi/archive/2011/06/16/WPFapp_g_cs.html

    

  

  

WPF 显示初始化界面的更多相关文章

  1. Wix 安装部署教程(九) --用WPF做安装界面

    经常安装PC端的应用,特别是重装系统之后,大致分为两类.一类像QQ,搜狗输入法这样的.分三步走的:第一个页面可以自定义安装路径和软件许可.第二个页面显示安装进度条,第三个页面推荐其他应用.先不管人家怎 ...

  2. 解决Jenkins 2.0 初始化界面卡住的问题

    ***************************************** *原创博客转载请注明出处,谢谢!* **************************************** ...

  3. C# WPF 显示图片和视频显示 EmuguCv、AForge.Net测试(续)

    介绍 本文是接着上文<C# WPF 显示图片和视频显示 EmuguCv.AForge.Net测试>写的,建议先看下上文,因为有些代码还需要了解. 增添 接着上文的代码,我们可以在事件处理方 ...

  4. WPF显示html的几种方法

    原文:WPF显示html的几种方法 客户希望系统在一些特定的条件下,界面上能显示用户自定义的格式和内容,格式和内容通过html指定. 基本上在wpf中显示html有以下四种方法. 1.       W ...

  5. RabbitMQ Server安装及显示管理界面Installing on Windows

    接上一篇文章,继续讲解 文件很小, 1.下载路径:http://www.rabbitmq.com/download.html 2.运行rabbitmq-server-3.6.5.exe,选择要安装的目 ...

  6. java中的显示初始化和特定初始化

    public class Test{ public static void main(String[] args){ Child child = new Child(); } } class Pare ...

  7. [IOS NSUserDefaults]的使用:登陆后不再显示登录界面。

    之前搜了好多地方都没找到实现“登陆后不再显示登录界面,而默认自动登录”的方法. 待我发现有种存储方式叫NSUserDefaults的时候,立马又感觉新技能get了. 简介: NSUserDefault ...

  8. vncserver和Ubuntu Xfce4远程桌面环境的配置,解决不显示图形界面

    vncserver和Ubuntu Xfce4远程桌面环境的配置 参考的http://blog.163.com/thinki_cao/blog/static/8394487520130301453180 ...

  9. SharedPreference 存储小量数据,一般首次启动显示引导界面就用这个。

    写://添加一个SharedPreference并传入数据SharedPreference sharedPreferences = getSharedPreferences("share_d ...

随机推荐

  1. 20150221—LINQ to SQL 查询数据

    LINQ to SQL 可以快捷的查询基于SQL的数据,直接在VS中包括基本的Object/relation映射器,O/R映射器可以快速的将基于SQL的数据源映射为CLR对象,之后就可以使用LINQ查 ...

  2. OC7_代理的基本概念

    // // Cat.h // OC7_代理的基本概念 // // Created by zhangxueming on 15/6/24. // Copyright (c) 2015年 zhangxue ...

  3. (转)linux查看CPU性能及工作状态的指令mpstat,vmstat,iostat,sar,top

    衡量CPU性能的指标: 1,用户使用CPU的情况:CPU运行常规用户进程CPU运行niced processCPU运行实时进程 2,系统使用CPU情况:用于I/O管理:中断和驱动用于内存管理:页面交换 ...

  4. html5离线应用详摘

    html5离线应用详摘 在html文件里配置如下: <html manifest=”name.manifest”> 在name.manifest文件里配置如下: CACHE MANIFES ...

  5. Webserver issues | PHP manager for IIS

    4 down vote accepted In order to successfully install the PHP manager for IIS 8, you need the .NET 3 ...

  6. CLR via C# 序列化读书笔记

    1. 序列化格式类 a. 二进制BinaryFormatter b. XML流 NetDataContractSerializer c. CLR类据类型与非CLR数据类型之间互操作 XmlSerial ...

  7. Oracle bbed 实用示例-----修改Data内容、恢复delete的rows

    bbed 可以在db open 状态来进行修改,但是建议在做任何修改操作之前先shutdown db. 这样避免checkpoint 进程重写bbed 对block 的修改. 也避免oracle 在b ...

  8. 重绘panel控件,实现panel的阴影效果

    最近想在项目中添加一个要有阴影的panel控件,找了好多资料,最后通过采用图片的方式实现了panel的阴影效果,效果图如下: 重绘代码如下: using System; using System.Co ...

  9. hive 操作(转)

    1.命令行操作 (1)打印查询头,需要显示设置: set hive.cli.print.header=true; (2)加"--",其后的都被认为是注释,但 CLI 不解析注释.带 ...

  10. How to create jar for Android Library Project

    http://stackoverflow.com/questions/17063826/how-to-create-jar-for-android-library-project This works ...