IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 .NET Discussion :

Problème enumération avec flags


Sujet :

.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Débutant
    Inscrit en
    Février 2007
    Messages
    134
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : Belgique

    Informations professionnelles :
    Activité : Débutant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2007
    Messages : 134
    Par défaut Problème enumération avec flags
    Bonjour à tous,

    Je rencontre un problème avec les énumérations avec Flags. En effet, je me demande comment on peut ajouter ou soustraire une selection à l'énumération. De plus, le code ci-après me conserve toujours une énumération non voulue.

    En fait je souhaite avoir comme résultat

    None si pas d'erreur
    Sélection multiple si présence d'erreurs (ici le none est toujours sélectionné)
    All si toute les erreurs sont sélectionnées

    Merci de votre aide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    	[Flags]
    	public enum AuditErrorOn
    	{
    		None = 0,
    		Missing = 1,
    		Extra = 2,
    		Obsoletes = 4,
    		All = 8
    	}
     
    public AuditErrorOn ErrorOn { get
    			{
    				if ( !HasError )
    					return AuditErrorOn.None;
     
    				AuditErrorOn error = AuditErrorOn.None;
     
    				// FIXME : comment faire pour ne pas avoir le None si il y a une erreur
    				if( MissingError ) error |= AuditErrorOn.Missing; 
    				if( ExtraError ) error |= AuditErrorOn.Extra;
    				if ( ObsoletesError ) error |= AuditErrorOn.Obsoletes;
     
    				if (error == (AuditErrorOn.Missing | AuditErrorOn.Extra | AuditErrorOn.Obsoletes))
    					error = AuditErrorOn.All;
     
    				return error;
    			}
    		}

  2. #2
    Membre Expert
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 545
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 545
    Par défaut
    A priori je n'ai pas ce souci. Si je mets un Console.WriteLine(error) avant ton return, j'ai bien ce que tu désires.
    Ton problème vient d'ailleurs (la façon dont tu testes error en sortie de la fonction ou de l'état de tes bits d'erreur

Discussions similaires

  1. [C#] Générer courbes multi-axes avec flags
    Par pitipilot dans le forum C#
    Réponses: 2
    Dernier message: 20/11/2014, 08h43
  2. Réponses: 5
    Dernier message: 08/12/2008, 12h19
  3. Réponses: 1
    Dernier message: 11/09/2005, 02h04
  4. [Débutant]Fonction avec des flags
    Par @r$£~%[ dans le forum C++
    Réponses: 10
    Dernier message: 22/08/2005, 10h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo