Bonsoir,
J'ai une dataGridView alimenté comme suit :
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 myDataGrid.DataSource = liste;
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.
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 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
Partager