Enum.Format(Type, Object, String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Konvertiert den angegebenen Wert eines angegebenen Enumerationstyps unter Berücksichtigung des angegebenen Formats in die entsprechende Zeichenfolgendarstellung.
public:
static System::String ^ Format(Type ^ enumType, System::Object ^ value, System::String ^ format);
public static string Format (Type enumType, object value, string format);
[System.Runtime.InteropServices.ComVisible(true)]
public static string Format (Type enumType, object value, string format);
static member Format : Type * obj * string -> string
[<System.Runtime.InteropServices.ComVisible(true)>]
static member Format : Type * obj * string -> string
Public Shared Function Format (enumType As Type, value As Object, format As String) As String
Parameter
- enumType
- Type
Der Enumerationstyp des zu konvertierenden Werts.
- value
- Object
Der zu konvertierende Wert.
- format
- String
Das zu verwendende Ausgabeformat.
Gibt zurück
Eine Zeichenfolgendarstellung von value
.
- Attribute
Ausnahmen
Der Parameter enumType
, value
oder format
ist null
.
Der enumType
-Parameter ist kein Enum-Typ.
- oder -
value
stammt aus einer Enumeration, die von einem anderen Typ als enumType
ist.
- oder -
Der value
-Typ ist kein enumType
zugrunde liegender Typ.
Der format
-Parameter hat einen ungültigen Wert.
format
ist gleich "X", der Enumerationstyp ist jedoch unbekannt.
\- oder -
.NET 8 und höhere Versionen: enumType
ist ein boolescher Enumerationstyp.
Beispiele
Das folgende Beispiel veranschaulicht die Verwendung von Format
im Kontext von Enum
.
using namespace System;
public enum class Colors
{
Red, Green, Blue, Yellow
};
int main()
{
Colors myColor = Colors::Blue;
Console::WriteLine( "My favorite color is {0}.", myColor );
Console::WriteLine( "The value of my favorite color is {0}.", Enum::Format( Colors::typeid, myColor, "d" ) );
Console::WriteLine( "The hex value of my favorite color is {0}.", Enum::Format( Colors::typeid, myColor, "x" ) );
}
// The example displays the folowing output:
// My favorite color is Blue.
// The value of my favorite color is 2.
// The hex value of my favorite color is 00000002.
using System;
enum Colors { Red, Green, Blue, Yellow };
public class FormatTest {
public static void Main() {
Colors myColor = Colors.Blue;
Console.WriteLine("My favorite color is {0}.", myColor);
Console.WriteLine("The value of my favorite color is {0}.", Enum.Format(typeof(Colors), myColor, "d"));
Console.WriteLine("The hex value of my favorite color is {0}.", Enum.Format(typeof(Colors), myColor, "x"));
}
}
// The example displays the following output:
// My favorite color is Blue.
// The value of my favorite color is 2.
// The hex value of my favorite color is 00000002.
open System
type Colors =
| Red = 0
| Green = 1
| Blue = 2
| Yellow = 3
let myColor = Colors.Blue
printfn $"My favorite color is {myColor}."
printfn $"""The value of my favorite color is {Enum.Format(typeof<Colors>, myColor, "d")}."""
printfn $"""The hex value of my favorite color is {Enum.Format(typeof<Colors>, myColor, "x")}."""
// The example displays the following output:
// My favorite color is Blue.
// The value of my favorite color is 2.
// The hex value of my favorite color is 00000002.
Enum Colors
Red
Green
Blue
Yellow
End Enum
Public Class FormatTest
Public Shared Sub Main()
Dim myColor As Colors = Colors.Blue
Console.WriteLine("My favorite color is {0}.", myColor)
Console.WriteLine("The value of my favorite color is {0}.", [Enum].Format(GetType(Colors), myColor, "d"))
Console.WriteLine("The hex value of my favorite color is {0}.", [Enum].Format(GetType(Colors), myColor, "x"))
End Sub
End Class
' The example displays the following output:
' My favorite color is Blue.
' The value of my favorite color is 2.
' The hex value of my favorite color is 00000002.
Hinweise
In der folgenden Tabelle sind die gültigen Werte für den format
Parameter aufgeführt.
Format | BESCHREIBUNG |
---|---|
"G" oder "g" | Wenn value gleich einer benannten Aufzählungskonstante ist, wird der Name dieser Konstanten zurückgegeben, andernfalls wird das Dezimaläquivalent von value zurückgegeben.Angenommen, die einzige aufgezählte Konstante heißt Red, und ihr Wert ist 1. Wenn value als 1 angegeben wird, gibt dieses Format "Rot" zurück. Wenn value jedoch als 2 angegeben wird, gibt dieses Format "2" zurück.- oder - Wenn das FlagsAttribute benutzerdefinierte Attribut auf die Enumeration angewendet wird, wird als Bitfeld behandelt, value das ein oder mehrere Flags enthält, die aus mindestens einem Bit bestehen.Wenn value gleich einer Kombination benannter aufgezählter Konstanten ist, wird eine durch Trennzeichen getrennte Liste der Namen dieser Konstanten zurückgegeben.
value wird nach Flags gesucht, die vom Flag mit dem größten Wert zum kleinsten Wert wechseln. Für jedes Flag, das einem Bitfeld in value entspricht, wird der Name der Konstante mit der durch Trennzeichen getrennten Liste verkettet. Der Wert dieses Flags wird dann von weiteren Überlegungen ausgeschlossen, und die Suche nach dem nächsten Flag wird fortgesetzt.Wenn value nicht gleich einer Kombination benannter aufgezählter Konstanten ist, wird das Dezimaläquivalent von value zurückgegeben. |
"X" oder "x" | Stellt value im Hexadezimalformat ohne führendes "0x" dar. |
"D" oder "d" | Stellt value in Dezimalform dar. |
"F" oder "f" | Verhält sich identisch mit "G" oder "g", mit der Ausnahme, dass die FlagsAttribute nicht in der Enum Deklaration vorhanden sein muss. |