等到"写完成"

时间:2015-05-05 08:48:27

标签: c# wpf

"简单"对那些"飘带家伙的问题"。我的程序在单个任务中启动SQL备份过程,对于每个DB的任何备份。 第一个任务完成后,所有任务逐个开始。但是,当SQL备份命令进入SQL服务器时,编写备份文件的过程需要花费更多时间,然后任务才能完成。此时,用户可以关闭程序并跳过对大数据库文件的反向处理。 有没有办法阻止我的程序关闭,直到每个备份文件都完全写入硬盘?

1 个答案:

答案 0 :(得分:1)

您可以像这样处理Closing的{​​{1}}:

Window

你应该做的是询问用户他是否真的想退出,如下所示:

private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
    if (BackupStillRunning)
        e.Cancel = true;
    else
        e.Cancel = false;
}

简单地不让用户关闭应用程序会很快变得令人沮丧。如果您真的不希望用户关闭应用程序,您至少应该显示一条消息来解释原因。

正如Damien_The_Unbeliever指出的那样,没有办法完全阻止应用程序关闭。