Datetimepicker [Résolu]

Messages postés
34
Date d'inscription
vendredi 1 juillet 2011
Dernière intervention
11 février 2013
- 19 déc. 2012 à 10:57 - Dernière réponse :
Messages postés
34
Date d'inscription
vendredi 1 juillet 2011
Dernière intervention
11 février 2013
- 20 déc. 2012 à 11:08
Bonjour, j'ai un DataGridView et j'aimerai que quand je clique dans une cellule, qu'il y ait un DateTimePicker qui apparaise dans la cellule afin de permettre de saisir une date.Et qui disparaisse en laissant la date saisie dans la cellule.
Quelqu'un aurait une idée?
Merci de bien vouloir m'aider!!!!!!!!!!!!!!
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
19 déc. 2012 à 18:59
2
Merci
Bonjour,

Voici un petit exemple qui montre comment ajouter un datetimepicker sur la cellule 1,1 lors d'un clic souris.
A tester dans un projet vierge.
Option Strict On
Public Class Form1
    'ajout d'un datagridview au formulaire
    Dim MonDataGrid As New DataGridView With {.Parent Me, .ColumnCount 3, .RowCount = 3}

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'abonnement à un événement click
        AddHandler MonDataGrid.MouseClick, AddressOf DataClick
    End Sub

    Private Sub DataClick(ByVal sender As Object, ByVal e As EventArgs)
        'si l'utilisateur clique sur la cellule 1,1...
        If MonDataGrid.SelectedCells(0) Is MonDataGrid.Rows(1).Cells(1) Then
            'récupération du rectangle d'affichage de la cellule
            Dim MonRectangle As Rectangle = MonDataGrid.GetCellDisplayRectangle(1, 1, True)
            'nouveau datetimepicker
            Dim DTP As New DateTimePicker
            'ajout événement au datetimepicker
            AddHandler DTP.ValueChanged, AddressOf valueChanged
            'positionnement 
            DTP.Bounds = MonRectangle
            'ajout au datagridview
            MonDataGrid.Controls.Add(DTP)
        End If
    End Sub

    Private Sub ValueChanged(ByVal sender As Object, ByVal e As EventArgs)
        'récupération datetimepicker
        Dim dtp As DateTimePicker = DirectCast(sender, DateTimePicker)
        'affichage date dans cellule
        MonDataGrid.Rows(1).Cells(1).Value = dtp.Value.ToLongDateString
        'déchargement du contrôle
        MonDataGrid.Controls.Remove(dtp)
        dtp.Dispose()
    End Sub
End Class

Merci Utilisateur anonyme 2

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 91 internautes ce mois-ci

Commenter la réponse de Utilisateur anonyme
Messages postés
34
Date d'inscription
vendredi 1 juillet 2011
Dernière intervention
11 février 2013
20 déc. 2012 à 11:08
0
Merci
Bonjour banana32
Votre code m'a beaucoup aidé encore merci et bonne journée!!!!
Commenter la réponse de Mozardyao

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.