0

可能重复:
打开消息框时关闭 wpf

我目前有这样的代码,但问题是即使我在MessageBox提供的错误中显示错误后NLog,我也想关闭应用程序,以便用户可以解决问题,但应用程序在他们单击消息中的确定后继续盒子。

private void Load(string fileName)
    {
        try
        {
            var environments = GetEnvironments(fileName); 
        }
        catch (FileNotFoundException ex)
        {
            logger.Error(ex.StackTrace);
        }
        catch (Exception ex)
        {
            logger.Error(ex.StackTrace);
        }
    }
4

1 回答 1

5

异常已处理,因此不会冒泡。

你有几个选择:

  • 记录后重新抛出异常,导致异常继续冒泡(并假设没有其他异常处理程序)并导致进程中止并出现未处理的异常:

    throw;
    
  • 显式关闭使用Environment.Exit

    Environment.Exit(-1);
    
  • 另一种选择是Application.Shutdown

    Application.Current.Shutdown();
    

重新抛出将向用户显示错误。其他两个选项不会。

于 2012-10-04T15:58:11.723 回答