如何捕获WPF应用程序的退出

时间:2017-06-14 07:02:22

标签: c# wpf

我有C#wpf应用程序,当我退出时,我有消息框"你确定要退出"如果按下确定,则一切正在关闭,应用程序正在退出。但是当我通过任务管理器关闭应用程序时,将显示消息框,并在3-4秒后退出应用程序。每次关闭wpf应用程序时,我都需要保存在数据库中,甚至通过任务管理器。我该如何做到这一点? 感谢

2 个答案:

答案 0 :(得分:0)

您有两件可能感兴趣的活动ClosingClosed

  

在调用Close之后直接发生,并且可以处理以取消窗口关闭。

并关闭

  

窗口即将关闭时发生。

你会像这样使用它们

<Window ... Closing="Window_Closing" Closed="Window_Closed">
    ...
</Window>

private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
    ...
}

private void Window_Closed(object sender, EventArgs e)
{
    ....
}

正如this帖子所说,您仍然可以捕获Closing事件并从那里处理它。

答案 1 :(得分:-1)

您需要做的事情有点复杂,因为用户始终可以关闭您的应用。当您无法控制应用程序的良好关闭时,其他情况是PC意外关闭。

此处您还是一个很好的链接,其中还讨论了此主题:Prevent C# app from process kill