none
rester dans la même cellule après CellValidated RRS feed

  • Question

  • Bonjour,

    J'utilise l'évènement "CellValidated" pour tester la saisie d'une cellule . Si tout est Ok, je passe à la cellule suivante, mais dans le cas ou la saisie n'est pas bonne, je voudrais rester sur la cellule courante : comment le faire?

    Voici mon code :

    Private

     

    Sub DGV_Planning_CellValidated(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) _

     

    Handles DGV_Planning.CellValidated

     

    Dim myRows As Integer = DGV_Planning.CurrentRow.Index

     

    Dim myColumn As Integer = DGV_Planning.CurrentCell.ColumnIndex

     

    Dim myData() As String

     

    Dim myRead As String = ""

     

    Dim myCells As String = DGV_Planning.Rows(myRows).Cells(myColumn).Value.ToString

     

    Dim codeTime As Boolean

     

    ' Test uniquement pour les cellule en readonly = false

     

    If DGV_Planning.Rows(myRows).Cells(myColumn).ReadOnly = False Then

     

    If String.IsNullOrEmpty(myCells) = False Then

    codeTime = searchCodeTime(myCells, myRead)

     

    If codeTime Then

     

    ' Je rcupre les donnes que j'ai besoin

    myData = myRead.Split(

    ";")

     

    '

     

    Else

     

    ' Il ne faut pas quitter la cellule

     

    ' ??

     

    End If

     

    ' Si la cellule est vide, je peux quand mme passer la cellule suivante

     

    End If

     

    End If

     

    End Sub

    Remerciements


    Jean PERIGNY, Développeur
    vendredi 14 mai 2010 07:09

Réponses

  • Bonjour,

    Utilisez l'événement CellValidating. Cet événement contient en paramètre une propriété Cancel qu'il faut définir à True pour annuler la validation (et donc forcer l'utilisateur à rester dans la cellule).

    Cordialement


    Gilles TOURREAU - MVP C# - Architecte .NET/Consultant/Formateur
    • Marqué comme réponse jperigny vendredi 14 mai 2010 16:38
    vendredi 14 mai 2010 12:23
    Modérateur

Toutes les réponses

  • Bonjour,

    Utilisez l'événement CellValidating. Cet événement contient en paramètre une propriété Cancel qu'il faut définir à True pour annuler la validation (et donc forcer l'utilisateur à rester dans la cellule).

    Cordialement


    Gilles TOURREAU - MVP C# - Architecte .NET/Consultant/Formateur
    • Marqué comme réponse jperigny vendredi 14 mai 2010 16:38
    vendredi 14 mai 2010 12:23
    Modérateur
  • Bonjour,

    Merci beaucoup, j'avais testé cellValidating, mais je n'avais pas troouvé la propriété Cancel.

    Remerciements, 


    Jean PERIGNY, Développeur
    vendredi 14 mai 2010 16:37