Type.IsEnum Właściwość

Definicja

Pobiera wartość wskazującą, czy bieżący Type reprezentuje wyliczenie.

public:
 virtual property bool IsEnum { bool get(); };
public:
 property bool IsEnum { bool get(); };
public virtual bool IsEnum { get; }
public bool IsEnum { get; }
member this.IsEnum : bool
Public Overridable ReadOnly Property IsEnum As Boolean
Public ReadOnly Property IsEnum As Boolean

Wartość właściwości

true jeśli bieżący Type reprezentuje wyliczenie; w przeciwnym razie false.

Implementuje

Przykłady

W poniższym przykładzie pokazano, jak używać IsEnum właściwości.

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 );
}
// The example displays the following output:
//     Is Color an enum? True.
//     Is Color a value type? True.
//     Is Enum an enum type? False.
//     Is Enum a value type? False.
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);
   }
}
// The example displays the following output:
//     Is Color an enum? True.
//     Is Color a value type? True.
//     Is Enum an enum type? False.
//     Is Enum a value type? False.
open System
type Color =
    | Red = 0
    | Blue = 1
    | Green = 2

let colorType = typeof<Color>
let enumType = typeof<Enum>
printfn $"Is Color an enum? {colorType.IsEnum}."
printfn $"Is Color a value type? {colorType.IsValueType}."
printfn $"Is Enum an enum Type? {enumType.IsEnum}."
printfn $"Is Enum a value type? {enumType.IsValueType}."
// The example displays the following output:
//     Is Color an enum? True.
//     Is Color a value type? True.
//     Is Enum an enum type? False.
//     Is Enum a value type? False.
Public Enum Color
    Red
    Blue
    Green
End Enum

Class Example
   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 
End Class
' The example displays the following output:
'     Is Color an enum? True.
'     Is Color a value type? True.
'     Is Enum an enum type? False.
'     Is Enum a value type? False.

Uwagi

Ta właściwość zwraca true wartość dla wyliczenia, ale nie dla Enum samego typu.

Jeśli bieżący Type reprezentuje skonstruowany typ ogólny, ta właściwość ma zastosowanie do definicji typu ogólnego, z której został skonstruowany typ. Jeśli na przykład bieżąca Type wartość reprezentuje MyGenericType<int> (MyGenericType(Of Integer) w Visual Basic), wartość tej właściwości jest określana przez wartość MyGenericType<T>.

Jeśli bieżący Type reprezentuje parametr typu w definicji typu ogólnego lub metody ogólnej, ta właściwość zawsze zwraca wartość false.

Ta właściwość jest tylko do odczytu.

Dotyczy

Zobacz też