是否可以获得类的所有属性,包括
中的子任务 Class Car
Property Speed
property Wheels(3) as Wheel
Class Wheel
Property Size
Property Type
End Class
End Class
如果我使用它:
Dim ArrayOfProperties() As Reflection.PropertyInfo = Car.GetType().GetProperties()
我可以获得属性Speed和Wheels,但我无法获得尺寸和类型。我如何获得子类属性?
答案 0 :(得分:1)
不是一下子。
要获取某个类型的Type,请使用GetType运算符。在以下示例中,Car
是类型,而不是Car
的实例。
Dim properties As PropertyInfo() = GetType(Car.Wheel).GetProperties()
您可以使用Types方法获取Type的所有嵌套GetNestedTypes。
For Each t As Type In GetType(Car).GetNestedTypes()
Dim properties As PropertyInfo() = t.GetProperties()
Next
所以你要做的就是将所有这些属性添加到一个列表中。
Dim all As New List(Of PropertyInfo)