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 :

Boucle FOR sur DATAGRIDVIEW [Débutant]


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Par défaut Boucle FOR sur DATAGRIDVIEW
    Bonjour à tous,

    Je ne suis pas développeur mais il m'arrive de taper quelques lignes de codes assez rarement.

    Je me suis fais une petite appli en C# pour gérer tous mes disques durs (oui, j'en ai pas mal ) dont voici l'interface :




    Nom : PrtScr capture_5.jpg
Affichages : 1297
Taille : 103,7 Ko


    Mon objectif :
    Effectuer une boucle pour lire tous les champs d'une colonne, et changer la couleur de fond de la cellule selon la valeur du champs.
    Dans mon exemple, j'aimerais que tous les disques durs de marque Freecom apparaissent dans une cellule à fond vert et ceux de marque WesternDigital dans une cellule à fond rouge.

    Voila ce que j'ai codé pour l'instant, je n'arrive pas à comprendre mon erreur :



    Nom : PrtScr capture_4.jpg
Affichages : 1124
Taille : 122,2 Ko


    Si des âmes charitables peuvent me venir en aide ce serait très aimable

    Merci d'avance.

  2. #2
    Membre éclairé Avatar de stolx_10
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2006
    Messages
    374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 374
    Par défaut
    Bonjour

    Dans un premier temps, la ligne
    ne sert à rien car int i = 0 et i++ fait le caclul de i directement.

    Par contre, il vaut mieux passer par l'évènement CellFormating de la GridView
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
            private void DataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
            {
                if (DataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString() = "Freecom")
                {
                   DataGridView1.Rows[e.RowIndex].Cells[1].Style.BackColor = System.Drawing.Color.Green;
     
                }   
                else
                {
                   DataGridView1.Rows[e.RowIndex].Cells[1].Style.BackColor = System.Drawing.Color.Red;
                }
     
            }
    Même plus besoin de votre boucle For

  3. #3
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Par défaut
    Super ! Merci beaucoup Stolx,

    C'est une très bonne idée qui fonctionne plutôt bien. Cependant en la mettant en oeuvre je me heurte à un ultime problème.

    Tout d'abord, ta méthode fonctionne à première vue :


    Nom : PrtScr capture_2.jpg
Affichages : 1078
Taille : 88,0 Ko


    Puis lorsque j'affiche la fin de ma liste, j'ai mon programme qui plante tout de suite :


    Nom : PrtScr capture_3.jpg
Affichages : 1061
Taille : 91,9 Ko


    J'aurais tendance à dire que le souci vient de l'index mais je n'arrive pas à me débloquer.

    Stolx peut m'aiguiller ?
    Une âme charitable ?

    Merci d'avance.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Par défaut
    Je suis vraiment désolé mais j'ai oublié de mettre la seul image vraiment utile, voila ou ça plante :


    Nom : PrtScr capture_4.jpg
Affichages : 1115
Taille : 132,3 Ko



    Désolé pour le double post

  5. #5
    Membre Expert
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 661
    Par défaut
    Bonjour,

    et en essayant de remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString() != null
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dataGridView1.Rows[e.RowIndex].Cells[1].Value != null
    ?

  6. #6
    Membre à l'essai
    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Avril 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2014
    Messages : 4
    Par défaut
    C'est vrai que je n'avait pas essayé ça, c'est nickel, tout fonctionne parfaitement.

    Merci PixelJuice, sympa

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

Discussions similaires

  1. [AC-2003] Boucle For sur colonnes
    Par thebigrensky dans le forum VBA Access
    Réponses: 0
    Dernier message: 27/01/2010, 15h52
  2. Boucle FOR sur certaines colonnes
    Par coralie59 dans le forum MATLAB
    Réponses: 1
    Dernier message: 25/02/2009, 11h54
  3. [BASH] boucle for sur des fichiers, recuperation du chemin ?
    Par zevince dans le forum Shell et commandes GNU
    Réponses: 13
    Dernier message: 13/11/2007, 10h47
  4. Boucle for sur fichiers sauf un !
    Par coincoin22 dans le forum Linux
    Réponses: 4
    Dernier message: 13/08/2007, 14h41
  5. [Eval] Problème de boucle for sur des tableaux
    Par battle_benny dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 12/01/2006, 23h55

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