Partage
  • Partager sur Facebook
  • Partager sur Twitter

Datetimepicker dans un DataGridView

Le datetimepicker n'apparait pas au premier click de la souris

Sujet résolu
    9 juillet 2021 à 21:03:10

    Bonjour.

    Je travaille sur un DataGridView qui a une cellule doit contenir une date. Lorsque l'on clique sur la cellule, un calendrier doit s'ouvrir et l'utilisateur choisie la date, ensuite le calendrier se ferme automatiquement et charge la valeur choisie par l'utilisateur dans un le texbox de ma datagridview.

    Sauf que quand je clique sur la cellule, le calendrier n'apparait pas automatiquement. Je dois cliquer sur une autre cellule pour que le calendrier apparait dans la cellule que j'avais précédemment cliquée.

    Voici le code 

    Private Sub date_Click(ByVal sender As Object, ByVal e As DataGridViewCellEventArgs) Handles datagridview1.CellClick
    
            If e.ColumnIndex = col_date.Index Then
                dtp = New DateTimePicker()
                dtp.Visible = True
    
                dtp.Format = DateTimePickerFormat.Custom
                dtp.CustomFormat = "yyyy-MM-dd"
    
                Dim rect As Rectangle = datagridview1.GetCellDisplayRectangle(e.ColumnIndex, e.RowIndex, True)
                dtp.Size = New Size(rect.Width, rect.Height)
                dtp.Location = New Point(rect.X, rect.Y)
    
                datagridview1.Controls.Add(dtp)
            End If
    
        End Sub

    Et pourtant la cellule courante a été bien ciblée. Qu'est-ce que je dois faire pour faire apparaître automatiquement le calendrier sans que l'utilisateur n'ait pas besoin de cliquer une seconde fois ailleurs pour voir le calendrier ?

    Merci d'avance !

    • Partager sur Facebook
    • Partager sur Twitter
      10 juillet 2021 à 14:23:26

      Bonjour

      Je fait plus ou moins la même chose. Cependant je n'utilise plus "CellClick" mais "CellContentClick".

      Je trouve CellContentClick plus tolérant sur les click moins bien placée.

      Bel apm!

      • Partager sur Facebook
      • Partager sur Twitter
        11 juillet 2021 à 2:10:19

        LPLLPL a écrit:

        Bonjour

        Je fait plus ou moins la même chose. Cependant je n'utilise plus "CellClick" mais "CellContentClick".

        Je trouve CellContentClick plus tolérant sur les click moins bien placée.

        Bel apm!


        Merci pour votre réponse !

        J'ai pu résoudre le problème finalement. Il a fallut passer la valeur True à la propriété ReadOnly de la cellule concernée.

        -
        Edité par Aissata12 11 juillet 2021 à 22:57:48

        • Partager sur Facebook
        • Partager sur Twitter

        Datetimepicker dans un DataGridView

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        • Editeur
        • Markdown