Chercher une valeur dans un enum

Le
J-L
Bonjour,

Si je définis un enum:

public enum MouseKeys
{
WM_LBUTTONDOWN = 0x0201,
WM_LBUTTONUP = 0x0202,
WM_LBUTTONDBLCLK = 0x0203,
WM_RBUTTONDOWN = 0x0204,
WM_RBUTTONUP = 0x0205,
WM_RBUTTONDBLCLK = 0x0206,
WM_MBUTTONDOWN = 0x0207,
WM_MBUTTONUP = 0x0208,
WM_MBUTTONDBLCLK = 0x0209,
WM_MOUSEWHEEL = 0x020A
}

et que je veux savoir si une valeur de variable est dans l'enum,
comment je peux faire sans utiliser un foreach ?

Sous Delphi j'utilisais
if mavariable in monset then

Avec C#, je ne trouve pas d'équivalent :(
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Delf
Le #12139951
J-L avait prétendu :

Bonjour,

Si je définis un enum:

public enum MouseKeys
{
WM_LBUTTONDOWN = 0x0201,
WM_LBUTTONUP = 0x0202,
WM_LBUTTONDBLCLK = 0x0203,
WM_RBUTTONDOWN = 0x0204,
WM_RBUTTONUP = 0x0205,
WM_RBUTTONDBLCLK = 0x0206,
WM_MBUTTONDOWN = 0x0207,
WM_MBUTTONUP = 0x0208,
WM_MBUTTONDBLCLK = 0x0209,
WM_MOUSEWHEEL = 0x020A
}

et que je veux savoir si une valeur de variable est dans l'enum, comment je
peux faire sans utiliser un foreach ?

Sous Delphi j'utilisais
if mavariable in monset then ...

Avec C#, je ne trouve pas d'équivalent :(



De mémoire; tu peux utiliser le retour string[] de Enums.GetNames() ;
tu utilise ce tableau pour initialiser un ArrayList et tu utilises
.Contains() dessus.

--
Delf
J-L
Le #12139921
>
De mémoire; tu peux utiliser le retour string[] de Enums.GetNames() ; tu
utilise ce tableau pour initialiser un ArrayList et tu utilises .Contains()
dessus.



Merci, j'ai trouvé le truc ...

public enum MouseKeys
{
WM_LBUTTONDOWN = 0x0201,
WM_LBUTTONUP = 0x0202,
WM_LBUTTONDBLCLK = 0x0203,
WM_RBUTTONDOWN = 0x0204,
WM_RBUTTONUP = 0x0205,
WM_RBUTTONDBLCLK = 0x0206,
WM_MBUTTONDOWN = 0x0207,
WM_MBUTTONUP = 0x0208,
WM_MBUTTONDBLCLK = 0x0209,
WM_MOUSEWHEEL = 0x020A
}

if (Enum.IsDefined(typeof(MouseKeys), MaValeur))
{
// C'est dedans
}
Publicité
Poster une réponse
Anonyme