Public Class classEnumAll
Enum TypeA As Integer A1 = -1 A2 = 1 A3 = 2
End Enum
Enum TypeB As Integer B1 = -1 B2 = 1 B3 = 2
End Enum
Private prop1 As String Public Property NewProperty() As String Get Return prop1
End Get Set(ByVal value As String)
prop1 = value
End Set End Property
Function MyFunc() As Integer
Return End FunctionEnd Class
那 Class 中的 Enum 是屬性嗎? 是 Field 嗎?var enumTypes = typeof(classEnumAll).GetNestedTypes(BindingFlags.Public);
var pubEnums = enumTypes.Where(t => t.IsEnum);
foreach(var enumType in enumTypes)
{
var enumNames = enumType.GetEnumNames();
foreach(var name in enumNames)
Console.WriteLine($"EnumName:{enumType.Name}, Name:{name}");
var enumValues = enumType.GetEnumValues();
foreach (var value in enumValues)
Console.WriteLine($"EnumName:{enumType.Name}, Value:{(int)value}");
}
VB.NETDim enumTypes =GetType(classEnumAll).GetNestedTypes(BindingFlags.Public)
Dim pubEnums = enumTypes.Where((Function(t As Type) t.IsEnum ))
For Each enumType In enumTypes
Dim enumNames = enumType.GetEnumNames
For Each name In enumNames
Console.WriteLine("EnumName:{0}, Name:{1}" , enumType.Name, name)
Next Dim enumValues = enumType.GetEnumValues
For Each value In enumValues
Console.WriteLine("EnumName:{0}, Value:{1}" , enumType.Name, Convert.ToInt16(value))
NextNext
結果如下,