App.Current.Shutdown()异步工作。这意味着当您调用此方法时,您不受保护,不会执行调用 Shutdown() 之后的代码行。
所以问题是如何阻止调用 App.Current.Shutdown() 的线程?
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
App.Current.Shutdown();
File.WriteAllText(@"..\log.txt", "Info");
}
}
private void App_OnExit(object sender, ExitEventArgs e) {
Thread.Sleep(3500);
}
File.WriteAll 将创建一个新文件并将“Info”字符串写入其中。