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

Windows Forms Discussion :

[VB.NET][DataGridView]:couleur de fond d'une cellule


Sujet :

Windows Forms

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [VB.NET][DataGridView]:couleur de fond d'une cellule
    Bonjour,

    je travaille sur VB.NET 2005 Express,
    et actuellement je souhaite modifier la couleur de fond de cellules spécifiques.

    sur mon Datagridview, j'essaye d'utiliser soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     * MonDG.item(x,y).style.backcolor=color.red
     
    * MonDG.rows(y).cells(x).style.backcolor=color.red
    dans les deux cas, il semble que mon affectation soit prise en compte, mais a l'affichage rien ne se produit.....

    j'ai tourné dans tous les sens.... je bloque!


    Cdlt,

    BigTicket'

    édité par neguib pour

  2. #2
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    A quel moment ces instructions sont elles executées, le sont-elles d'ailleurs : >>> debuggage avec point d'arrêt

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    en fait ceci est integré dans une fonction de recherche!
    je lui passe une chaine de caracteres en parametres, et elle parcourt les colonnes et lignes.

    Si elle trouve une correspondance elle change la couleur de fond de la cellule, afin de la rendre immédiatemetn visible...

    Mais tout se déroule normalement, pas d'erreur...

    je recupere meme dans une variable test la valeur de la couleur de fond de la cellule modifiée! et c'est la bonne....

    mais visuellement, aucune modification...

    dslé pour la balise code!

    BT'

  4. #4
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    désolé également car j'ai fait un test chez moi sur un Click de Button de changer le BackColor de CurrentCell et çà marche
    Quelquechose dans ton code doit annuler l'affichage du nouveau BackColor :

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    ....ouais...bizarre!!

    faudra que je teste avec un bouton!!
    sinon j'essaye a nouveau d'épelucher mon code ;-)

    merci pour les infos, je sais dorénavent que ca vient d'un probleme de code et non VS.net

    ;-)

    passes de bonnes fêtes!

    BT'

    PS: si je trouve la solution rapidement je la mets, sinon je cloturerai le sujet


  6. #6
    Expert éminent
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 64
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Pour me rapprocher de ton code j'ai fait un test avec une coloration dynamique où grâce à 2 combobox je peux choisir la ligne et la colonne de la cellule que je veux colorer et çà fonctionne toujours de façon impeccable :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub BColorCell_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BColorCell.Click
            Me.DGVSimpleVue.Item(Me.CBColumns.SelectedIndex, Me.CBRows.SelectedIndex).Style.BackColor = Color.Chartreuse
    End Sub
    Ceci fonctionne egalement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.DGVSimpleVue.Rows(Me.CBRows.SelectedIndex).Cells(Me.CBColumns.SelectedIndex).Style.BackColor = Color.Chartreuse

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    En effet cela fonctionne bien avec deux combos et un bouton.

    Le seul souci est que l'on est obligé de passer par un evenement (genre click)
    alors que j'aimerai modifier la couleur de fond dans ma fonction de recherche ...

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [RESOLU][VB.NET][DATAGRIDVIEW]:couleur de fond cellule
    ok, en fait je récupere les lignes et colonnes qui doivent etre mises en évidences dans des arraylist .

    et j'ai crée une méthode qui s'execute à la premiere selection sur le grid et qui recupere mes valeurs dans les arrayLists et modifie la couleur de fond!

    c'est invisible pour l'utilisateur et ca affiche bien ce que je voulais!

    Merci!

    Bonne année a tous ;-)

    BT'

  9. #9
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Salut

    Je ne sais pas si apres 3 ans qui y a encore un peu de vie ici mais j'ai un problème similaire. J'essaye de changer la couleur d'un bouton dans une colonne datagridview

    Pour la couleur backround de la row, ca va bien mais pour la cellule du bouton ca change rien !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      private void setRowColor(int iRow)
        {
          DataGridViewRow cRow = dgv_viewTour.Rows[iRow];
          ColorDialog cd = new ColorDialog();
          cd.ShowDialog();
          cRow.DefaultCellStyle.BackColor = cd.Color;
          cRow.Cells[1].Style.BackColor = cd.Color;
     
        }

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

Discussions similaires

  1. Récupérer la couleur de fond d'une cellule de tableau transparente
    Par Seb33300 dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 08/01/2011, 18h20
  2. Réponses: 4
    Dernier message: 26/08/2010, 08h20
  3. Modifier couleur de fond d'une cellule d'un tableau dynamiquement.
    Par fred61 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 27/03/2009, 02h19
  4. Couleur de fond d'une cellule variable
    Par Cafu3 dans le forum Débuter
    Réponses: 2
    Dernier message: 19/03/2009, 10h56
  5. mise à jour de la couleur de fond d'une cellule
    Par Lady_jade dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 02/11/2005, 11h18

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