Vb.net Visual Studio 2010中的例外情况
我有一个WinForms应用程序从EventHandler(例如按钮点击订阅服务器)中的代码引发异常 我有一个try..catch块,用于调用表单的ShowDialog 异常不会传播到try..catch块,但它只会在处理程序处停止,并关闭表单 1) 如何将异常传播到块 2) 在这些情况下,最佳做法是什么 这是一个新的VS 2010 AddIn probject,向导添加了一个简单的工具菜单项:Vb.net Visual Studio 2010中的例外情况,vb.net,exception-handling,visual-studio-addins,Vb.net,Exception Handling,Visual Studio Addins,我有一个WinForms应用程序从EventHandler(例如按钮点击订阅服务器)中的代码引发异常 我有一个try..catch块,用于调用表单的ShowDialog 异常不会传播到try..catch块,但它只会在处理程序处停止,并关闭表单 1) 如何将异常传播到块 2) 在这些情况下,最佳做法是什么 这是一个新的VS 2010 AddIn probject,向导添加了一个简单的工具菜单项: Public Sub Exec(ByVal commandName As String, B
Public Sub Exec(ByVal commandName As String, ByVal executeOption As vsCommandExecOption, ByRef varIn As Object, ByRef varOut As Object, ByRef handled As Boolean) Implements IDTCommandTarget.Exec
handled = False
If executeOption = vsCommandExecOption.vsCommandExecOptionDoDefault Then
If commandName = "MyAddin1.Connect.MyAddin1" Then
Dim form1 = New Form1
Try
form1.ShowDialog()
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
handled = True
Exit Sub
End If
End If
End Sub
表单的唯一内容是一个按钮,该按钮带有引发“newexception()”的静态处理程序
单击该按钮时,不会捕获异常。在Windows窗体中,每个事件处理程序都需要自己的try/catch块,或者您可以尝试使用,尽管在外接程序中可能无法使用。请参见我想避免在每个事件处理程序中都出现“尝试…”捕获,这似乎严重违反了DRY。。。(和额外的机械工作/容易出错)不幸的是,我有一个全局异常处理程序,它也不能从加载项工作。