VB.NET에서 다음과 같은 작업을하고 싶습니다. 가능합니까?인수로 "유형"을 전달할 수 있습니까?
Function task(value as Object, toType as Type)
Return DirectCast(value, toType)
End Function
VB.NET에서 다음과 같은 작업을하고 싶습니다. 가능합니까?인수로 "유형"을 전달할 수 있습니까?
Function task(value as Object, toType as Type)
Return DirectCast(value, toType)
End Function
예. System.Type이 있습니다. 그러나 당신은 실제로 Generic을 원할 수 있습니다.
Function SomeFunction(Of T)(obj As Object) As T
'' Magic
End Function
오. 오. 요즘 C#에 익숙 해요. –
당신은이
function task(of myType)(value as myType) as MyType
''stuff
return value
end function
예,하지만, 요구 사항에 따라, 당신은 모든 종류의 주조/변환을 할에서는 CType을 사용할 수 있습니다 사용하고 싶습니다. 유효한 유형 변환이있는 한 CType은 작동하지만 DirectCast에서는 value
이 toType
이어야합니다. 이 같은
Public Sub BindListControlToEnum(Of T)(ListCtrl As ListControl)
Dim itemValues As Array = System.Enum.GetValues(GetType(T))
Dim itemNames As Array = System.Enum.GetNames(GetType(T))
For i As Integer = 0 To itemNames.Length - 1
Dim item As New ListItem(itemNames(i), itemValues(i))
ListCtrl.Items.Add(item)
Next
End Sub
전화를 : -
다양한 대답이 여기에 동일한 할 수있는 일반적인 기능입니다
BindDropdownToEnum(Of MyClass.MyEnum)(MyRadioButtonListControl)
당신은 * 전에 개체를 캐스팅하지 않는 이유를 *받는 보내기 작업 기능? – Juliet
확실한 해결 방법이 아닌가요?! –