Vb.net 创建指定类型的泛型列表
我想创建一个泛型列表——但我想在运行时指定类型——有什么方法可以做到这一点吗?也许使用反射 像这样的Vb.net 创建指定类型的泛型列表,vb.net,list,generics,Vb.net,List,Generics,我想创建一个泛型列表——但我想在运行时指定类型——有什么方法可以做到这一点吗?也许使用反射 像这样的 Public Shared Sub create(ByVal t As Type) Dim myList As New Generic.List(Of t) End Sub 提前谢谢 James如果调用方知道该类型,则可以将该方法本身设置为泛型: Public Shared Sub create(Of t)() Dim myList As New Generic.List(
Public Shared Sub create(ByVal t As Type)
Dim myList As New Generic.List(Of t)
End Sub
提前谢谢
James如果调用方知道该类型,则可以将该方法本身设置为泛型:
Public Shared Sub create(Of t)()
Dim myList As New Generic.List(Of t)
End Sub
如果调用者不知道类型,您将不得不求助于反射-以获取更多信息。我有一个函数可以做到这一点:
Public Shared Function CreateList(Of T)(ByVal ParamArray items() As T) As List(Of T)
Return New List(Of T)(items)
End Function
例如,我可以通过以下操作创建一个整数列表:
dim L as list(of Integer) = CreateList(1,2,3,4,5)
或者创建一个文本框列表:
dim L as list(of TextBox) = CreateList(txtPhone1, txtPhone2, txtPhone3)
或者一般来说,任何类型。在这种情况下,请尝试System.Reflection.Emit。