【发布时间】:2015-05-21 17:11:45
【问题描述】:
我解决了这个问题,它在表单的基础类中,我检查了错误详细信息并找到了原因。非常感谢大家。
我试图在运行时创建一个表单,我正在从我的数据库中加载表单名称,并且当用户将其作为字符串保存在菜单项标记中时。当用户单击菜单项时,它会调用 LoadForm 函数来创建表单。但不幸的是,我收到了以下错误:
调用目标抛出异常。
函数的以下行出现错误:
Return DirectCast(Activator.CreateInstance(FormType), frmBasedChiled)
我写了下面的函数,我用的是VB.NET 2010,你能帮帮我吗?
** frmBasedChiled 表单是我创建的一个特殊表单类,我从它继承了我所有的项目表单。
Private Function LoadForm(ByVal FormName As String) As frmBasedChiled
Dim FormType = Assembly.GetExecutingAssembly.GetTypes.Where(Function(a) _
a.BaseType() = GetType(frmBasedChiled) AndAlso a.Name = FormName.ToString).FirstOrDefault
If FormType Is Nothing Then
Return Nothing
End If
Return DirectCast(Activator.CreateInstance(FormType), frmBasedChiled)
End Function
【问题讨论】:
-
应该有内部异常。可以用调试器检查吗?
-
@ChaosPandion 我用的是debug,这是debug错误
-
用 C# 标记的任何原因?
-
始终包含完整的错误详细信息。如果 Inner Exception 为 Null,我们想知道这一点。
-
我写了错误信息,我检查了FormType对象,它不为空