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

C# Discussion :

contenu des labels


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2006
    Messages : 98
    Par défaut contenu des labels
    bonjour
    je veux que si ma label contien 1,je veux la remplacer par UP et Down si egale à 0,moi j'ai fait comme ca :

    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
    if (lb[0].Text == "1" || lb[1].Text == "1" || lb[6].Text == "1" || lb[7].Text == "1" || lb[12].Text == "1" || lb[13].Text == "1")
                   {
                       lb[0].Text = "UP";
                       lb[1].Text = "UP";
                       lb[6].Text = "UP";
                       lb[7].Text = "UP";
                       lb[12].Text = "UP";
                       lb[13].Text = "UP";
                   }
                   else if (lb[0].Text == "0" || lb[1].Text == "0" || lb[6].Text == "0" || lb[7].Text == "0" || lb[12].Text == "0" || lb[13].Text == "0")
                   {
                       lb[0].Text = "DOWN";
                       lb[1].Text = "DOWN";
                       lb[6].Text = "DOWN";
                       lb[7].Text = "DOWN";
                       lb[12].Text = "DOWN";
                       lb[13].Text = "DOWN";
                   }
    ça marche pas si j'aurai un label contien 1 et autre 0
    foreach ça marche pas encore, car il passe sur tous les controls,moi je veux que quelque lables
    je serai reconaissant

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Par défaut
    1/ soignes ton français...
    (si j'aurais == si j'avais... merci d'avance)

    2/ pour resoudre un tel problème, le mieux serait d'avoir une liste de label, et de faire un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    List<Label> myListOfLabel = new List<Label>();
     
    puis tu la remplis comme tu veux ...
     
    foreach(Label l in myListOfLabel)
    {
         l.Text = (l.Text == "0")?"UP":"Down";
    }
    Sinon, si tes labels se trouvent dans un control,

    tu peux aussi faire un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    foreach(Control c in Controls)
    {
      if(c is Label)
      {
         ((Label)c).Text = (((Label)c).Text == "1")?"UP":"DOWN";
      }
    The Monz, Toulouse

    }

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2006
    Messages : 98
    Par défaut
    bonjour
    merci comme même
    svp j'aurai et pas j'avais car je parle au futur càd au cas ou j'aurai des labels qui contient 0 et autre 1,d'une part
    d'autre part ta solution ça marche pas car j'ai déja dit que:
    foreach ça marche pas encore, car il passe sur tous les controls,moi je veux que quelque lables
    exemple:
    j'ai 4 labels
    2 contient 1
    2 contient 0
    et moi je veux afficher up et down sur qlq labels et pas tous
    merci d'avance

  4. #4
    Membre chevronné
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2004
    Messages
    304
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2004
    Messages : 304
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    Label[] lb = new Label[] { lblAdminstatFast, lblOperStatFast, lblOctetInFast, lblOctetOutFast, lblErrorsInFast, lblErrorsOutFast, lblAdminstatSerial, lblOperStatSerial, lblOctetInSerial, lblOctetOutSerial, lblErrorsInSerial, lblErrorsOutSerial, lblAdminstatNull, lblOperStatNull, lblOctetInNull, lblOctetOutNull, lblErrorsInNull, lblErrorsOutNull };
    string[] param = new string[] {"interfaces.ifTable.ifEntry.ifAdminStatus.1", "interfaces.ifTable.ifEntry.ifOperStatus.1", "interfaces.ifTable.ifEntry.ifInOctets.1", "interfaces.ifTable.ifEntry.ifOutOctets.1", "interfaces.ifTable.ifEntry.ifInErrors.1", "interfaces.ifTable.ifEntry.ifOutErrors.1", "interfaces.ifTable.ifEntry.ifAdminStatus.2", "interfaces.ifTable.ifEntry.ifOperStatus.2", "interfaces.ifTable.ifEntry.ifInOctets.2", "interfaces.ifTable.ifEntry.ifOutOctets.2", "interfaces.ifTable.ifEntry.ifInErrors.2", "interfaces.ifTable.ifEntry.ifOutErrors.2","interfaces.ifTable.ifEntry.ifAdminStatus.3", "interfaces.ifTable.ifEntry.ifOperStatus.3", "interfaces.ifTable.ifEntry.ifInOctets.3", "interfaces.ifTable.ifEntry.ifOutOctets.3", "interfaces.ifTable.ifEntry.ifInErrors.3", "interfaces.ifTable.ifEntry.ifOutErrors.3" };
    for (int i = 0; i <18; i++)
    {
       objSnmpObject = (SnmpObject)objSnmpManager.Get(param[i]);
       lb[i].Text = objSnmpObject.Value;
       if(i==0 || i==1 || i ==6 || i==7|| i==12 || i == 13)
       {  
          if(lb[i].Text == "1") lb[i].Text = "UP";
          else if(lb[i].Text == "0") lb[i].Text = "DOWN";
       }
    }
    Ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    int[] indices = new int[] { 0, 1, 6, 7, 12, 13 };
    foreach(int i in indices)
    {
      if(lb[i].Text == "1") lb[i].Text = "UP";
      else if(lb[i].Text == "0") lb[i].Text = "DOWN";
    }

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 23
    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    int[] indices = new int[] { 0, 1, , 7, 12, 13 };
    foreach(int i in indices)
    {
      if(lb[i].Text == "1") lb[i].Text = "UP";
      else if(lb[i].Text == "0") lb[i].Text = "DOWN";
    }
    Ca depend ce qu'il veut faire car là ca ne met "UP" que dans celui qui contient le 1 et pareil pour "DOWN"

    Autrement si tu veux que ca le change dans tous les labels (0,1,7,12,13), tu peux garder ton premier code mais il faut enlever le "else": en effet avec lui, si ton if est 'vrai' il saute le 'else' et donc n'execute pas ce qu'il y a dans ton deuxieme if

  6. #6
    Membre éprouvé Avatar de Onlava
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2007
    Messages : 92
    Par défaut
    Sinon il y a la méthode du taggeur

    Tu mets un tag quelconque sur les controles que tu veux parcourir.
    Ensuite tu boucles tous tes controles en testant le tag, et agis en conséquence.
    (Tag étant de type object tu peut y mettre n'importe quoi)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] déplacer des labels contenu dans flowlayoutpanel
    Par veens777 dans le forum VB.NET
    Réponses: 2
    Dernier message: 26/08/2012, 22h42
  2. Contenu des variables...
    Par jula dans le forum Linux
    Réponses: 5
    Dernier message: 13/04/2005, 17h44
  3. [JTable]Aligner le contenu des cellules
    Par )3lade dans le forum Composants
    Réponses: 2
    Dernier message: 09/03/2004, 13h24
  4. Perte du contenu des blobs
    Par macakou99 dans le forum Débuter
    Réponses: 10
    Dernier message: 22/05/2003, 15h17
  5. [VB6] Des labels qui réagissent à la souris
    Par murielle dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 24/10/2002, 14h19

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