DateTimePicker avec uen textBox [Résolu]

klod50 6 Messages postés vendredi 14 octobre 2005Date d'inscription 14 novembre 2008 Dernière intervention - 31 oct. 2007 à 15:24 - Dernière réponse : Nikoui 794 Messages postés vendredi 24 septembre 2004Date d'inscription 19 août 2008 Dernière intervention
- 31 oct. 2007 à 16:14
Bonjour,
j'aimerai faire un usercontrol du type dateTimePicker en ajoutant au menu déroulant en plus du calendar un textbox permettant de saisir une valeur numérique.

Est-ce que quelqu'un aurait une idée de comment faire ?

Merci
Afficher la suite 

7 réponses

Répondre au sujet
Nikoui 794 Messages postés vendredi 24 septembre 2004Date d'inscription 19 août 2008 Dernière intervention - 31 oct. 2007 à 16:14
+3
Utile
En effet je n'avais pas tout à fait compris... (c'est le côté "dynamique" qui manquait à la capture d'écran). Mais au final le principe reste le même :

Ton user control contiendra : un DateTimePicker (invisible au départ) ainsi qu'une TextBox (visible) et à côté de la TextBox un bouton avec une image correspondant à la 'flèche' d'une ComboBox.

Lorsque l'utilisateur clique sur ce bouton, tu redimensionne ton controle pour avoir la place de faire aparaitre le DateTimePicker en dessous (et tu le fais effectivement aparaitre en le mettant 'Visible').

Lorsque l'utilisateur sélectionne une date dans le DateTimePicker, tu le masque a nouveau, tu redimensionne ton contrôle, et tu affiche la date sélectionnée dans ta TextBox.

<hr size="2" width="100%" />
Working as designed
www.nikoui.fr
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Nikoui
Nikoui 794 Messages postés vendredi 24 septembre 2004Date d'inscription 19 août 2008 Dernière intervention - 31 oct. 2007 à 15:27
0
Utile
Tu peux faire un control qui hérite par exemple d'un Panel, et àjouter à ce panel un dateTimePicker ainsi qu'un TextBox (et ensuite c'est à toi de jouer pour lier les deux par code)

<hr size="2" width="100%" />
Working as designed
www.nikoui.fr
Commenter la réponse de Nikoui
klod50 6 Messages postés vendredi 14 octobre 2005Date d'inscription 14 novembre 2008 Dernière intervention - 31 oct. 2007 à 15:40
0
Utile
En fait, voilà ce que je voudrait faire exactement.
http://img64.imageshack.us/my.php?image=datetimepickerwt6.png

le problème c'est de lier ce panel contenant le calendar et le textbox à une liste déroulante comme on peut le voir dans l'image.
Commenter la réponse de klod50
Nikoui 794 Messages postés vendredi 24 septembre 2004Date d'inscription 19 août 2008 Dernière intervention - 31 oct. 2007 à 15:45
0
Utile
Est ce que la liste déroulante doit faire partie du contrôle que tu veux faire ?
Ou tu veux faire un contrôle (date picker + textbox) qui puisse être lié à une liste déroulance extérieure?

<hr size="2" width="100%" />
Working as designed
www.nikoui.fr
Commenter la réponse de Nikoui
klod50 6 Messages postés vendredi 14 octobre 2005Date d'inscription 14 novembre 2008 Dernière intervention - 31 oct. 2007 à 15:49
0
Utile
En effet, j'aimerai que la liste déroulante fasse partie du contrôle.
Commenter la réponse de klod50
Nikoui 794 Messages postés vendredi 24 septembre 2004Date d'inscription 19 août 2008 Dernière intervention - 31 oct. 2007 à 15:55
0
Utile
Dans ce cas tu créer un nouveau UserControl vierge, puis tu glisse dessus un DateTimePicker, une TextBox et une ComboBox. Ensuite, tu peux t'abonner aux évènements de chacun de ces trois contrôle, et faire ce qu'il faut par code pour les lier de façon cohérente :
- lorsqu'une date est sélectionnée dans le DateTimePicker, tu mets à jour la TextBox et la ComboBox,
- lorsqu'on change de mois dans le DateTimePicker, tu remplis la ComboBox avec les valeurs correspondant au nouveau mois,
- lorsqu'on sélectionne une valeur dans la ComboBox, tu modifie le DateTimePicker pour le faire pointer sur cette valeur, etc.
(je dis peut être des bêtises, mais tu devrais même pouvoir faire ça en utilisant le data binding, plutôt qu'en t'abonnant aux évènements de chaque contrôles)

Ensuite, une fois que tu as fais tout cela et que tu traite tous les cas, pour que ton contrôle soit utilisable par d'autres applications, il te reste à rajouter des propriétés publiques (comme la date actuellement sélectionnée par exemple) et une série de fonction publique permettant de "piloter" ton contrôle (comme une fonction permettant de forcer la date courante à une date précise, ou a la date du jour par exemple).

Est ce que tu arrives à voir comment il faut faire?

<hr size="2" width="100%" />
Working as designed
www.nikoui.fr
Commenter la réponse de Nikoui
klod50 6 Messages postés vendredi 14 octobre 2005Date d'inscription 14 novembre 2008 Dernière intervention - 31 oct. 2007 à 16:04
0
Utile
Je me suis peut être mal expliqué où alors je ne comprends pas ce que tu dis.
Ce que je veux, c'est avoir un champ text associé à un bouton de la même manière qu'une combobox.
Lorsqu'on clique sur le bouton, le textBox et le calendar apparaissent pour permettre la saisie des valeurs de la même manière que la liste des items s'affiche lorsqu'on clique sur une combobox.
Une fois les valeurs saisies, la valeur modifié se retrouve dans le champ texte du début et le textBox et le calendar disparaissent.

J'espère être plus clair maintenant.
Commenter la réponse de klod50

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.