DataGrid et DataGridViewTextBoxColumn
Bonsoir,
J'ai une dataGridView alimenté comme suit :
Code:
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:
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:
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