none
Evènement sur une cellule d'un datagridveiw RRS feed

  • 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.

    dimanche 8 décembre 2013 08:37

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

    • Modifié Nirannor dimanche 8 décembre 2013 18:11
    • Marqué comme réponse Nirannor dimanche 8 décembre 2013 18:11
    dimanche 8 décembre 2013 16:28

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

    dimanche 8 décembre 2013 11:18
  • 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

    • Modifié Nirannor dimanche 8 décembre 2013 18:11
    • Marqué comme réponse Nirannor dimanche 8 décembre 2013 18:11
    dimanche 8 décembre 2013 16:28