【发布时间】:2010-10-18 00:01:32
【问题描述】:
我有以下简单的场景:
带有Button的DialogForm,Button_click会抛出异常。
一个带有按钮和标签的 MainForm,在单击时,我在 Catch 块中显示了 DialogForm 的新实例。
如果我在常规 WinForms 中运行此设置,我可以按预期捕获异常。
如果我在 WinMobile 中运行它(我已经在 WM5 和 WM6 Pro 上进行了测试),我可以使用调试器看到输入了 Catch 块 但异常继续传播 并且应用程序死亡。
MainForm 中的代码如下所示:
try
{
using (DialogForm frm = new DialogForm())
{
DialogResult r = frm.ShowDialog();
label1.Text = r.ToString();
}
}
catch (Exception ex)
{
label1.Text = ex.Message;
}
编辑:
我进一步调查了一下,在这段代码和 Application.Run() 周围加上了一个 catch {} 块,但应用仍然退出。
显然它不是失控的异常,它被捕获和处理得很好。但在此操作之后,应用程序似乎执行了一个不需要的 Exit()。
【问题讨论】:
标签: c# winforms exception windows-mobile