在用户关闭其中一个窗口之后,有什么办法可以关闭所有窗口吗?下面是重要的部分:不使用App.Current.Shutdown()
,而是在其余窗口上单独调用close
?在关闭一个窗口之后关闭WPF中的所有窗口
我的想法是在Window_Closing
事件处理程序方法的每个其余窗口中调用close
。但有一个问题。假设我有两个窗口类,A
和B
。我分别创建了A
和B
- a
和b
的一个实例。如果我关闭窗口A
,则它会调用Window_closing
事件处理程序方法,并在那里调用b.close()
。然后在B
类(A
和B
是窗口类,它们都来自Window
继承)Window_closing
方法被调用(因为我刚刚叫B.close()
)和B::Window_closing
电话a.close()
并且它导致异常的原因,我已经关闭a
。
什么是解决这个正确的方法是什么?
不会退出整个应用程序? – spark
为什么你想避免'App.Current.Shutdown()'?如果有一个你没有描述的要求,那么你可能还有一个你没有想到的替代解决方案。 –