捕获表单(而不是整个应用程序)上未处理的异常
本文关键字:应用程序 未处理 异常 表单 | 更新日期: 2023-09-27 18:15:51
是否有任何方法可以捕获表单上任何未处理的异常?我不想在一个try catch块中包装数百个表单中的数百个方法。
我有一个基本的形式,每个形式继承。
是否有办法捕获任何未处理的异常?
谢谢
我认为没有办法。你只能这样做:
MyForm form = new MyForm();
try
{
form.ShowDialog();
}
catch (Exception ex)
{
...
}
或者您可以使用模式代理(http://en.wikipedia.org/wiki/Proxy_pattern),并为表单创建一个类包装器,该包装器将具有ShowDialog方法,并将在其中进行异常处理。
public class FormProxy<TForm>
where TForm : Form
{
private TForm _form;
....
}