【发布时间】:2011-10-14 09:15:10
【问题描述】:
我使用 MS Chart Controls 开发了一个 ClickOnce 应用程序。它适用于图表部分。 但是,由于需要预先安装 Chart Control(具有管理员权限而不是经典 ClickOnce 部署),我需要检测该组件在机器上是否可用。
所以我尝试创建一个新图表并处理可能的异常,但似乎无法捕获它(异常级别太低?):
Try
Dim oChart as New Chart
Catch
' Some user-friendly message to ask the user to contact the helpdesk
End Try
此代码永远不会执行:当我输入此代码所在的事件时,我得到一个未处理的异常。
有关调用的详细信息,请参阅此消息的末尾 即时 (JIT) 调试,而不是此对话框。
*****异常文本** ***** System.IO.FileNotFoundException:无法加载文件或程序集 'System.Windows.Forms.DataVisualization,版本=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 或其其中之一 依赖项。该系统找不到指定的文件。文件名: 'System.Windows.Forms.DataVisualization,版本=3.5.0.0, 文化=中性,PublicKeyToken=31bf3856ad364e35' 在 SIPReportingControl.Main.expMain_SelectedGroupChanged(对象发送者, GroupEventArgs e) 在 Infragistics.Win.UltraWinExplorerBar.SelectedGroupChangedEventHandler.Invoke(对象 发件人,GroupEventArgs e)
您有什么想法可以:
- 能够使用 ClickOnce 部署 MS 图表控件(我认为不可能)。
- 检测是否安装了图表控件。
- 捕获这个奇怪的异常。
提前致谢。
编辑 调用方法(即使我点击报告以外的其他组也会产生异常):
Private Sub expMain_SelectedGroupChanged(sender As Object, e As Infragistics.Win.UltraWinExplorerBar.GroupEventArgs) Handles expMain.SelectedGroupChanged
Try
If blnDoEvent Then
CleanControls()
Select Case e.Group.Key
Case "Search"
DisplayGrid(True)
Case "AddEdit"
DisplayAddEdit(Nothing)
Case "Reporting"
Dim oChart As New Chart
End Select
End If
Catch ex As Exception
MsgBox(ex.Message & vbCrLf & ex.StackTrace)
End Try
End Sub
【问题讨论】:
标签: vb.net exception-handling clickonce mschart