Application.ShutdownMode 属性

定义

获取或设置导致调用 Shutdown() 方法的条件。

public:
 property System::Windows::ShutdownMode ShutdownMode { System::Windows::ShutdownMode get(); void set(System::Windows::ShutdownMode value); };
public System.Windows.ShutdownMode ShutdownMode { get; set; }
member this.ShutdownMode : System.Windows.ShutdownMode with get, set
Public Property ShutdownMode As ShutdownMode

属性值

一个 ShutdownMode 枚举值。 默认值是 OnLastWindowClose

示例

以下示例演示如何配置 ShutdownMode 以指定必须显式关闭应用程序。

<Application
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    StartupUri="MainWindow.xaml"
    ShutdownMode="OnExplicitShutdown"
    >
</Application>

注解

仅当调用 Application 的 方法时 Shutdown ,应用程序才会停止运行。 关闭可以隐式或显式发生,由 属性的值 ShutdownMode 指定。

如果设置为 ShutdownModeOnLastWindowClose,Windows Presentation Foundation (WPF) 在应用程序的最后一个窗口关闭时隐式调用Shutdown,即使当前任何实例化的窗口都设置为主窗口, (可以看到MainWindow) 。

ShutdownModeOnMainWindowClose 会导致 WPF 在关闭时MainWindow隐式调用Shutdown,即使其他窗口当前处于打开状态。

某些应用程序的生存期可能不依赖于关闭主窗口或最后一个窗口的时间,或者可能根本不依赖于窗口。 对于这些方案, ShutdownMode 需要将 属性设置为 OnExplicitShutdown,这需要显式 Shutdown 方法调用来停止应用程序。 否则,应用程序将继续在后台运行。

ShutdownMode 可以从 XAML 以声明方式配置,也可以通过代码以编程方式进行配置。

此属性仅在创建 对象的线程中 Application 可用。

适用于

另请参阅