不允许关闭主窗口

时间:2016-10-09 13:38:36

标签: c# windows-runtime uwp

我正在开发一个可以浏览多个窗口的UWP应用程序,如Microsoft Edge或Sticky Notes。

我通过调用Window.Current.Close()成功关闭子窗口,但无法关闭主窗口或子窗口的基本窗口。

Exception thrown: 'System.Runtime.InteropServices.COMException' in MyApp.exe
WinRT information: Closing main window is not allowed.

另一方面,无论顺序如何,我们都可以运行Microsoft Edge窗口并关闭它们。

有没有办法关闭主窗口或更改windows的父子关系?

1 个答案:

答案 0 :(得分:1)

在主窗口中执行ApplicationView.GetForCurrentView().TryConsolidateAsync()以将其正确关闭,就像您通过单击标题栏中的“关闭”按钮将其关闭一样。如果您的应用程序每个实例只有一个窗口,则您最好使用Application.Exit(),因为此方法会挂起应用程序,而Application.Exit()则会突然关闭应用程序。同样,通过这种方法关闭应用程序也会记住您应用程序的先前位置和大小,与Application.Exit()不同。