Définir la valeur DateTimePicker sur null
Je suis en train d'élaborer un WinForms de l'INTERFACE utilisateur avec deux DateTimePicker
contrôles. Initialement, je veux de la valeur des contrôles à null jusqu'à ce qu'un utilisateur sélectionne une date. Si l'utilisateur ne sélectionne pas de date, il va passer la valeur null dans la base de données.
Par défaut la date du jour.
Pourriez-vous svp suggérer quelque chose ou attachez un morceau de code qui va m'aider.
J'ai essayé le réglage de la MinDate
bien, mais ça ne fonctionne pas.
Le code est en C# .Net.
Grâce,
Manali.
source d'informationauteur Manali
Vous devez vous connecter pour publier un commentaire.
Je pense que la meilleure solution est d'utiliser la mise en case à cocher permettant d'indiquer à l'utilisateur si une valeur est spécifiée ou non.
Définir le contrôle de la propriété
ShowCheckBox = true
Lorsque vous liez la valeur de faire quelque chose comme
Lors de la lecture de la valeur de vérifier la
Checked
propriété.Si vous n'aimez pas la valeur affichée lorsqu'elle est désactivée, vous pouvez combiner cela avec les autres suggestions.
Je sais que c'est un vieux post, mais d'autres peuvent encore trouver cela utile. Il est assez élégant et concis. J'ai utilisé ce avec un .Net 4.0 DateTimePicker, mais les versions antérieures doivent travailler avec un minimum de réglages. Il tire parti de MinDate et Vérifié.
Pour afficher la valeur null dans
DateTimePicker
de contrôle, apportez les modifications suivantes dans leDesigner.cs
fichier:Lorsque l'utilisateur sélectionne une date de code dans le
ValueChanged
propriété du contrôle et de rendre le format en fonction de vos besoins. Cela permet d'afficher la date dans le contrôle.Le au-dessus d'un seul écran sur le contrôle des vides dans l'INTERFACE utilisateur, cependant la valeur par défaut sera toujours à la date actuelle.
Si vous souhaitez définir/initialisation de la valeur null ou une chaîne vide:
temp = DateTimePicker.CustomFormat.ToString();
C'est la méthode la plus simple solution de contournement que j'ai trouvé.
Peut-être vous avez besoin de créer un UserControl avec les Appereance d'une zone de texte,et lorsque l'utilisateur de cliquer sur un Calendrier de Spectacle, lorsque vous sélectionnez une Date fixée à la zone de texte. Il va autoriser les valeurs null.
Le DateTimePicker ne pas autoriser les valeurs null.
J'espère que cela devrait vous aider à Link1 Pour afficher vide dans le sélecteur de champ
et ce trop Link2
Supposons
dtpStartDate
est votre contrôle DateTimePicker.Écrire ce code dans Page_Load-
Écrire ce code dans Value_Changed événement-
choisie ici "court" comme Format. Vous pouvez sélectionner "Long" et autre option disponible.
C'est le code de nullable datetime picker que j'utilise: