猿问

如何以编程方式退出WPF应用程序?

几年来,我一直在使用C#(Windows窗体),但从未使用过WPF。但是,现在我喜欢WPF,但是当用户单击“文件”菜单中的“退出”菜单项时,我不知道如何退出应用程序。


我努力了:


this.Dispose();

this.Exit();

Application.ShutDown();

Application.Exit();

Application.Dispose();

除其他外。没用。


慕村9548890
浏览 1234回答 3
3回答

开满天机

要退出您的应用程序,您可以致电System.Windows.Application.Current.Shutdown();如该Application.Shutdown方法的文档中所述,您还可以通过指定ShutdownMode来修改应用程序的关闭行为:在以下情况下,Windows Presentation Foundation(WPF)隐式调用Shutdown:当ShutdownMode设置为OnLastWindowClose时。当ShutdownMode设置为OnMainWindowClose时。当用户结束会话并且SessionEnding事件未处理或已处理而没有取消时。另请注意,Application.Current.Shutdown();只能从创建Application对象的线程(通常是主线程)中调用。

墨色风雨

如果确实需要关闭它,则也可以使用Environment.Exit(),但它一点都不优雅(更像是结束进程)。如下使用它:Environment.Exit(0)

慕娘9325324

Application.Current.Shutdown();是不可逆的,我相信它通常用于强制应用程序在诸如用户注销或关闭Windows时关闭。而是this.close()在主窗口中调用。这与在窗口上按Alt+ F4或关闭[x]按钮相同。Application.Current.Shutdown();只要未取消关闭操作,这将导致所有其他拥有的窗口关闭,并且最终将调用。请参阅有关关闭窗口的MSDN文档。另外,由于this.close()可以取消,因此可以在关闭事件处理程序中放入保存更改确认对话框。只需为其创建一个事件处理程序<Window Closing="...">并e.Cancel相应地进行更改。
随时随地看视频慕课网APP
我要回答