在主文件中:
Window window = new MyDialogWindow();
try
{
window.ShowDialog();
}
catch
{
// This is never called !
}
在 MyDialogWindow 中:
private void MyDialogWindow_Closing( object sender, CancelEventArgs e )
{
throw new Exception();
}
似乎抛出到关闭事件处理程序的异常永远不会到达调用者的 catch 块。你知道为什么吗 ?
编辑:我应该提到我已经检查了 MyDialogWindow_Closing 在我按下关闭按钮后被调用。
EDIT2:在监听 AppDomain.CurrentDomain.UnhandledException 时,事件被触发!