从 class 库 (Caliburn.Micro) 关闭 WPF 应用程序

Closing WPF Application from a class library (Caliburn.Micro)

我必须开发一个 WPF 应用程序并使用 Caliburn.Micro 来提供 MVVM。 但这次视图模型位于单独的 class 库中。

一切正常,直到我想关闭应用程序。因为视图模型位于单独的程序集中,所以它们无法访问 WPF 应用程序的应用程序 class。所以我不能使用 System.Windows.Application.Current.Shutdown() 来关闭应用程序,就像我在以前的应用程序中所做的那样。

那么在这种情况下我该如何退出应用程序呢?

关于现有 class 层次结构的信息:ViewModelBase 是我所有视图模型的抽象基础 class。它派生自 Caliburn.Micro.PropertyChangedBase 并为 IoC、window 管理器和事件聚合器提供功能。

继承自 Caliburn.Micro.Screen,派生自 PropertyChangedBaseViewAware,并调用 TryClose().

或者直接调用System.Environment.Exit(0).