Type.IsEnum 属性
获取一个值,该值指示当前的 Type 是否表示枚举。
**命名空间:**System
**程序集:**mscorlib(在 mscorlib.dll 中)
语法
声明
Public ReadOnly Property IsEnum As Boolean
用法
Dim instance As Type
Dim value As Boolean
value = instance.IsEnum
public bool IsEnum { get; }
public:
virtual property bool IsEnum {
bool get () sealed;
}
/** @property */
public final boolean get_IsEnum ()
public final function get IsEnum () : boolean
属性值
如果当前 Type 表示枚举,则为 true;否则为 false。
备注
此属性 (Property) 对枚举返回 true,但是对 Enum 类型本身则不然。
如果当前 Type 表示某种已构造的泛型类型,则此属性适用于从中构造此类型的泛型类型定义。例如,如果当前 Type 表示 MyGenericType<int>
(在 Visual Basic 中为 MyGenericType(Of Integer)
),则此属性的值由 MyGenericType<T>
确定。
如果当前 Type 表示泛型类型或泛型方法的定义中的类型参数,则此属性始终返回 false。
此属性为只读。
示例
下面的示例展示如何使用 IsEnum 属性 (Property)。
Imports System
Public Enum Color
Red
Blue
Green
End Enum 'Color
Class TestIsEnum
Public Shared Sub Main()
Dim colorType As Type = GetType(Color)
Dim enumType As Type = GetType([Enum])
Console.WriteLine("Is Color an enum? {0}.", colorType.IsEnum)
Console.WriteLine("Is Color a value type? {0}.", colorType.IsValueType)
Console.WriteLine("Is Enum an enum type? {0}.", enumType.IsEnum)
Console.WriteLine("Is Enum a value type? {0}.", enumType.IsValueType)
End Sub 'Main
End Class 'TestType
using System;
public enum Color
{
Red, Blue, Green
}
class TestIsEnum
{
public static void Main()
{
Type colorType = typeof(Color);
Type enumType = typeof(Enum);
Console.WriteLine("Is Color an enum? {0}.", colorType.IsEnum);
Console.WriteLine("Is Color a value type? {0}.", colorType.IsValueType);
Console.WriteLine("Is Enum an enum Type? {0}.", enumType.IsEnum);
Console.WriteLine("Is Enum a value type? {0}.", enumType.IsValueType);
}
}
using namespace System;
enum class Color
{
Red, Blue, Green
};
int main()
{
Type^ colorType = Color::typeid;
Type^ enumType = Enum::typeid;
Console::WriteLine( "Is Color an enum? {0}.", colorType->IsEnum );
Console::WriteLine( "Is Color a value type? {0}.", colorType->IsValueType );
Console::WriteLine( "Is Enum an enum Type? {0}.", enumType->IsEnum );
Console::WriteLine( "Is Enum a value type? {0}.", enumType->IsValueType );
}
import System.*;
enum Color
{
red, blue, green;
} //Color
class TestIsEnum
{
public static void main(String[] args)
{
Type colorType = Color.class.ToType();
Type enumType = Enum.class.ToType();
Console.WriteLine("Is Color an enum? {0}.",
System.Convert.ToString(colorType.get_IsEnum()));
Console.WriteLine("Is Color a value type? {0}.",
System.Convert.ToString(colorType.get_IsValueType()));
Console.WriteLine("Is Enum an enum Type? {0}.",
System.Convert.ToString(enumType.get_IsEnum()));
Console.WriteLine("Is Enum a value type? {0}.",
System.Convert.ToString(enumType.get_IsValueType()));
} //main
} //TestIsEnum
这段代码产生以下输出:
Is Color an enum? True.
Is Color a value type? True.
Is Enum an enum type? False.
Is Enum a value type? False.
平台
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
版本信息
.NET Framework
受以下版本支持:2.0、1.1、1.0
.NET Compact Framework
受以下版本支持:2.0、1.0