Enum.Format(Type, Object, String) Méthode

Définition

Convertit la valeur spécifiée d'un type énuméré spécifié en sa représentation sous forme de chaîne équivalente conformément au format spécifié.

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

Paramètres

enumType
Type

Type d’énumération de la valeur à convertir.

value
Object

Valeur à convertir.

format
String

Format de sortie à utiliser.

Retours

String

Représentation sous forme de chaîne de value.

Attributs

Exceptions

Le paramètre enumType, value ou format est null.

Le paramètre enumType n'est pas un type Enum.

  • ou -

Le value provient d’une énumération de type différent de enumType.

  • ou -

Le type de value n’est pas un type sous-jacent de enumType.

Le paramètre format contient une valeur non valide.

format égale "X", mais le type d'énumération est inconnu.

Exemples

L’exemple suivant illustre l’utilisation Format dans le contexte de 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.

Remarques

Le tableau suivant présente les valeurs valides du format paramètre.

Format Description
"G" ou "g" Si value elle est égale à une constante énumérée nommée, le nom de cette constante est retourné ; sinon, l’équivalent décimal de value celui-ci est retourné.

Par exemple, supposons que la seule constante énumérée soit nommée Red, et sa valeur est 1. Si value elle est spécifiée sous la forme 1, ce format retourne « Rouge ». Toutefois, si value elle est spécifiée sous la forme 2, ce format retourne « 2 ».

- ou -

Si l’attribut FlagsAttribute personnalisé est appliqué à l’énumération, value il est traité comme un champ de bits qui contient un ou plusieurs indicateurs qui se composent d’un ou plusieurs bits.

Si value elle est égale à une combinaison de constantes énumérées nommées, une liste séparée par un séparateur des noms de ces constantes est retournée. value est recherché pour les indicateurs, passant de l’indicateur avec la plus grande valeur à la plus petite valeur. Pour chaque indicateur qui correspond à un champ de bits dans value, le nom de la constante est concaténé à la liste séparée par un séparateur. La valeur de cet indicateur est ensuite exclue d’une considération supplémentaire, et la recherche continue pour l’indicateur suivant.

Si value elle n’est pas égale à une combinaison de constantes énumérées nommées, l’équivalent décimal est value retourné.
"X" ou "x" Représente value au format hexadécimal sans « 0x » de début.
"D" ou "d" Représente value sous forme décimale.
"F" ou "f" Se comporte de manière identique à « G » ou « g », sauf que celui-ci FlagsAttribute n’est pas requis pour être présent sur la Enum déclaration.

S’applique à

Voir aussi