Meilleur auteur de réponses
Evènement sur une cellule d'un datagridveiw

Question
-
Bonjour,
J'ai un datagridview composé de cellules remplies dynamiquement et de cellules à remplir par l'utilisateur. Je souhaitais tester les valeurs entrées seulement pas l'utilisateur. Quel évènement dois-je prendre ?
Avec CellValueChanged, je n'arrive pas à empêcher le test des cellules déjà remplies dynamiquement lorsque la form s'ouvre.
Réponses
-
Bonjour, je ne connait pas trop ce composant mais tu ne peux pas rendre les cellules dynamiques non modifiable par l'utilisateur ?
DataGridView1.Columns().Item(0).ReadOnly = True
Cela j'y arrive.
Ce que je souhaite c'est choisir un évènement qui ne traite que les cellules modifiables par l'utilisateur.
Edit : En cherchant j'ai trouvé une solution. Je mets une condition (if) sur les colonnes qui contiennent les cellules dynamiquement remplies.
If e.ColumnIndex > 3 Then Dim value As Object = DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value Dim numericCheck As Boolean numericCheck = IsNumeric(value) If value IsNot DBNull.Value And value IsNot Nothing And numericCheck = True Then DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value = DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value ElseIf value IsNot DBNull.Value And value IsNot Nothing And numericCheck = False Then DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value = DBNull.Value Else End If Else End If
Toutes les réponses
-
-
Bonjour, je ne connait pas trop ce composant mais tu ne peux pas rendre les cellules dynamiques non modifiable par l'utilisateur ?
DataGridView1.Columns().Item(0).ReadOnly = True
Cela j'y arrive.
Ce que je souhaite c'est choisir un évènement qui ne traite que les cellules modifiables par l'utilisateur.
Edit : En cherchant j'ai trouvé une solution. Je mets une condition (if) sur les colonnes qui contiennent les cellules dynamiquement remplies.
If e.ColumnIndex > 3 Then Dim value As Object = DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value Dim numericCheck As Boolean numericCheck = IsNumeric(value) If value IsNot DBNull.Value And value IsNot Nothing And numericCheck = True Then DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value = DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value ElseIf value IsNot DBNull.Value And value IsNot Nothing And numericCheck = False Then DGC_LISTEMATCHT1(e.ColumnIndex, e.RowIndex).Value = DBNull.Value Else End If Else End If