在VBNet函数中,能否将类引用作为参数传递?

2026-05-06 08:132阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计410个文字,预计阅读时间需要2分钟。

在VBNet函数中,能否将类引用作为参数传递?

如果您在使用不正确的语法或听到像完整的菜谱一样的指令,请纠正我。在调用类库中的`sub`函数时,我希望传递的是对表示列表的类的引用,而不是实例化的列表本身。然后,我想从类库函数中实例化这个列表。这可能包括:

如果我使用不正确的术语或听起来像一个完整的菜鸟,请原谅我.

在类库中调用sub时,我想传递的不是实例化的表单,而只是对表示表单的类的引用.然后我想从类库函数中实例化表单.这可能吗?

类似于以下内容:

在主要应用中:

ClassLib.MyClass.DisplayForm(GetType(Form1))

然后,在类库中:

Public Class MyClass Public Shared Sub DisplayForm(WhichFormClass As Type) Dim MyForm as Form = WhichFormClass.CreateObject() 'Getting imaginitive MyForm.ShowDialog() End Sub End Class

希望我的例子传达了我想要完成的事情.如果你认为我的做法是假的,我会接受其他策略.

除了MotoSV的答案之外,这里还有一个只使用泛型的版本:

在VBNet函数中,能否将类引用作为参数传递?

Public Shared Sub DisplayForm(Of T As {New, Form})() Dim instance = New T() instance.ShowDialog() End Sub

您可以使用如下:

DisplayForm(Of Form1)()

使用此方法,您可以确保传递的类型是表单,并且实例具有ShowDialog()方法.没有必要的演员可能最终失败.但是,有必要在设计时知道类型参数以调用该方法.

本文共计410个文字,预计阅读时间需要2分钟。

在VBNet函数中,能否将类引用作为参数传递?

如果您在使用不正确的语法或听到像完整的菜谱一样的指令,请纠正我。在调用类库中的`sub`函数时,我希望传递的是对表示列表的类的引用,而不是实例化的列表本身。然后,我想从类库函数中实例化这个列表。这可能包括:

如果我使用不正确的术语或听起来像一个完整的菜鸟,请原谅我.

在类库中调用sub时,我想传递的不是实例化的表单,而只是对表示表单的类的引用.然后我想从类库函数中实例化表单.这可能吗?

类似于以下内容:

在主要应用中:

ClassLib.MyClass.DisplayForm(GetType(Form1))

然后,在类库中:

Public Class MyClass Public Shared Sub DisplayForm(WhichFormClass As Type) Dim MyForm as Form = WhichFormClass.CreateObject() 'Getting imaginitive MyForm.ShowDialog() End Sub End Class

希望我的例子传达了我想要完成的事情.如果你认为我的做法是假的,我会接受其他策略.

除了MotoSV的答案之外,这里还有一个只使用泛型的版本:

在VBNet函数中,能否将类引用作为参数传递?

Public Shared Sub DisplayForm(Of T As {New, Form})() Dim instance = New T() instance.ShowDialog() End Sub

您可以使用如下:

DisplayForm(Of Form1)()

使用此方法,您可以确保传递的类型是表单,并且实例具有ShowDialog()方法.没有必要的演员可能最终失败.但是,有必要在设计时知道类型参数以调用该方法.