Bonjour, je suis assez agacer par le contrôle Datagridview qui me paraissait presque parafait jusque là...

En effet je cherche à traiter un clic sur une cellule dont le type est DataGridViewCheckBoxCell mias je n'y parvient pas. J'ai lu pas mal de posts sur les différent Forum MSDN, ici et ailleurs mais je n'ai jamais trouver le moyen de réaliser mon traitement proprement et sûrement. J'ai d'ailleurs lu tout et n'importe quoi... et moi même fait tout est n'importe quoi sans résultat...

ref voici comment je procède pour "checké" la case. mon problème est de tester l'état de cette dernière :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
void dataGridViewItems_CellContentClick(object sender, System.Windows.Forms.DataGridViewCellEventArgs e)
        {
            this.dataGridViewItems.Rows[e.RowIndex].Cells[e.ColumnIndex].Value = 1;
        }
ca marche très bien, mais pour tester la valeur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
this.dataGridViewItems.Rows[e.RowIndex].Cells[e.ColumnIndex].Value
ben là je cale. le type est DataGridViewCheckBoxCell, donc j'ai bien essayé d'instancié un objet de ce type et de l'initialisé :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
DataGridViewCheckBoxCell maCell = new DataGridViewCheckBoxCell();
            maCell = (DataGridViewCheckBoxCell)this.dataGridViewItems.Rows[e.RowIndex].Cells[e.ColumnIndex];
maCell.Value = 1; //fonctionne pour cocher la case
 
//mais ceci ne fonctionne pas pour tester la valeur de la case
if((bool)maCell.value == true)
   //....
 
//ceci non plus... fallait tenter quand meme on sait jamais
if(Int32.parse(maCell.value.ToString()) == 1)
   //....
bref je sius à cours d'idée...

si quelqu'un aurait une explication quelquonque... merci d'avance