2015-09-20 128 views

回答

40

您可以使用CoreApplication类。它提供了一个static exit method

public void CloseApp() 
{ 
    CoreApplication.Exit(); 
} 

但是,文档指出以下几点:

注意不要使用此方法来关闭的测试或调试方案之外的应用程序。

不幸的是,背后的原因尚未公布。


更进一步,你可以使用老式的Application.Exit方法(非静态):

public void CloseApp() 
{ 
    Application.Current.Exit(); 
} 

在这里,你还应该看看在备注:

使用此方法提供使用户能够退出您的应用程序的UI。但是,通常情况下,您不应该提供此UI,因为系统会根据需要自动管理应用使用期限并终止暂停应用以释放资源。

TL;博士: 两种Exit方法将终止应用程序,而不是中止它。你应该问自己,这是否是你想要做的动作。

+1

原因是它违反UX指南,以编程方式关闭应用程序 –

9

这是退出UWP应用程序的支持方式:

Application.Current.Exit(); 

但是,由于它是比较罕见的,你应该使用它仔细考虑相关的场景,其中所述UI体验您可以使用此方法,例如,如果某个帐户已过期或者远程管理的安全权限被撤销,那么以编程方式退出应用程序可能是合理的。很少有您自己的“退出”按钮位于屏幕中间,而没有违反Windows准则

+0

哇,太简单了!谢谢! “ – AlexeySRG

+4

”很少有你自己的“退出”按钮坐在你的屏幕中间......“ - 这实际上很常见,因为几乎没有例外,每一款游戏都有一个退出按钮! –

+0

你还会退出一个仅运行全屏的桌面应用程序吗? – dynamichael

相关问题