说明
当新建一个wpf应用程序,会自动生成一个App.xaml和MainWindow.xaml文件
其中App.xam用来设置Application,应用程序的起始文件和资源及应用程序的一些属性和事件的设置,app.xaml.cs是处理应用程序的相关资源和事件
事件
Activated 当应用程序成为前台应用程序时发生。
Deactivated 当应用程序停止作为前台应用程序时发生。
DispatcherUnhandledException 在异常由应用程序引发但未进行处理时发生。
Exit 恰好在应用程序关闭之前发生,且无法取消。
FragmentNavigation 当应用程序中的导航器开始导航至某个内容片断时发生,如果所需片段位于当前内容中,则导航会立即发生;或者,如果所需片段位于不同内容中,则导航会在加载了源 XAML 内容之后发生。
LoadCompleted 在已经加载、分析并开始呈现应用程序中的导航器导航到的内容时发生。
Navigated 在已经找到应用程序中的导航器要导航到的内容时发生,尽管此时该内容可能尚未完成加载。
Navigating 在应用程序中的导航器请求新导航时发生。
NavigationFailed 在应用程序中的导航器在导航到所请求内容时出现错误的情况下发生。
NavigationProgress 在由应用程序中的导航器管理的下载过程中定期发生,以提供导航进度信息。
NavigationStopped 在调用应用程序中的导航器的 StopLoading 方法时发生,或者当导航器在当前导航正在进行期间请求了一个新导航时发生。
SessionEnding 在用户通过注销或关闭操作系统而结束 Windows 会话时发生。
Startup 在调用 Application 对象的 Run 方法时发生。
属性
ShutdownMode
OnLastWindowClose(默认值) | 应用程序关闭时,或最后一个窗口关闭时关闭,或调用Application对象的Shutdown() 方法时,应用程序关闭。 |
OnMainWindowClose | 启动窗体关闭或调用Application对象的Shutdown()方法时,应用程序关闭。(和C#的Windows应用程序的关闭模式比较类似) |
OnExplicitShutdown | 只有在调用Application对象的Shutdown()方法时,应用程序才会关闭。 |
StartupUri 启动窗口
Winform对比
- winform的启动入口在Program.cs文件,wpf的App.xaml自动生成了Main,如果想要自己写Main入口,将属性改为Page。
- winform的一些Application事件,比如退出"Application.ApplicationExit += new EventHandler(Application_ApplicationExit)",在wpf里面通过事件直接添加函数。