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 :

DataGrid et DataGridViewTextBoxColumn


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de shaun_the_sheep
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2004
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 619
    Par défaut DataGrid et DataGridViewTextBoxColumn
    Bonsoir,

    J'ai une dataGridView alimenté comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    myDataGrid.DataSource = liste;
    ou liste est une ArrayList() comopsé d'objet personel (classe avec des methode set et get) que j'alimente comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    list9.Add(new Taxe(dr["contact_id"].ToString(), dr["year_no"].ToString(), dr["net_amount"].ToString(), dr["cont_currency"].ToString(), dr["date_contribution"].ToString(), dr["collecteur"].ToString(), dr["n_promesse"].ToString(), dr["n_contribution"].ToString()));
    Je gére une colonne de type DataGridViewTextBoxColumn et sur l'événement CellValueChanged de cette case , je dois cocher toutes les lignes de la même année.

    Je fais cela comme cela :
    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
     
      foreach (DataGridViewRow row in mydataGrid.Rows)
                            {
                                if (row.Index != tableautaxe1.SelectedCells[0].RowIndex)
                                {
                                    Taxe tRow = (Taxe)row.DataBoundItem; //-> recup objet de la ligne
                                    string annee_TaxeR = tRow.Annee_taxe;
                                    if (annee_TaxeR == annee_Taxe && ad.Selected)
                                    {
                                        ((Taxe)list9[row.Index]).Selected = true; affMess = true;
                                    }
                                    else 
                                    { 
                                        ((Taxe)list9[row.Index]).Selected = false;
                                    }
     
                                    //DataGridViewCheckBoxCell cbxCell = mydataGrid.Rows[row.Index].Cells[e.ColumnIndex] as DataGridViewCheckBoxCell;
                                    //cbxCell.DataGridView.CommitEdit(DataGridViewDataErrorContexts.Commit);
                                    //mydataGrid.Rows[0].Cells.CommitEdit  .SelectedCells[counter]..EditedFormattedValue.ToString();
     
                                }
     
                            }

    Je gére l'évenement CurrentCellDirtyStateChanged et myDataGrid.CommitEdit(DataGridViewDataErrorContexts.Commit);

    Seulement mes cases visuellement ne se cochent pas alors que la valeur associé à la case à coché passe bien à true.

    Elles ne s'affichent qu'en mode debug.

    Quelqu'un a une idée ?

    Merci

  2. #2
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    Bonjour,

    Si Selected est une property Browsable de la classe Taxe, ça devrait marcher ...

  3. #3
    Membre éprouvé Avatar de shaun_the_sheep
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2004
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 619
    Par défaut
    Bonjour,

    Selected est bien une propriété de ma classe Taxe comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     public bool Selected
            {
                get { return selected; }
                set { selected = value; }
            }
    c'est pourquoi je ne comprend pas bien. En mode pas à pas (debug) , ce fonctionne , mais pas en fonctionnement normal.

    Merci

  4. #4
    Membre éprouvé Avatar de shaun_the_sheep
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2004
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 619
    Par défaut
    j'ai fais un petit test , si je coche ma case et qu'une condition est respectée , je la décoche.

    Sur la cellule en cours cela fonctionne bien elle se décoche.

    Le même test mais en cochant la celulle du dessous, cela ne fonctionne pas, elle ne se coche pas.

  5. #5
    Membre éprouvé Avatar de shaun_the_sheep
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2004
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 619
    Par défaut
    petit rectificatif.

    Si je bascule mon affichage de mon appli vers autre chose (navigateur) , puis je reviens sur mon appli ma case est cochée !!

  6. #6
    Membre éprouvé Avatar de shaun_the_sheep
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Octobre 2004
    Messages
    1 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 1 619
    Par défaut
    bon je contourne mon problème en masquant puis affichant ma dataGridView pour "actualiser l'affichage".

    cela me donne le resultat voulu , mais si quelqu'un a une meilleur idée.

    Merci

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

Discussions similaires

  1. [VB.net] Changer couleur ligne DataGrid
    Par bguihal dans le forum Windows Forms
    Réponses: 7
    Dernier message: 22/07/2016, 06h54
  2. Pb d'update dans une DataGrid
    Par bidson dans le forum XMLRAD
    Réponses: 11
    Dernier message: 27/05/2003, 14h11
  3. [VB.NET] Insérer une colonne de CheckBox dans un DataGrid
    Par Manue.35 dans le forum Windows Forms
    Réponses: 2
    Dernier message: 22/05/2003, 11h44
  4. [VB6] Datagrid afficher ou cacher des colonnes par code
    Par soazig dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 06/02/2003, 17h19
  5. [] Datagrid vide après modification des propriétés
    Par SpaceFrog dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 20/09/2002, 16h37

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