9
votes

Comment définir la valeur DateTimePicker à la date de (.net)

J'ai DoneTimePicker sur ma forme et j'ai défini une valeur à la propriété Format personnalisée sur "dd / mm / aaaa" ant quand j'exécute ce code:

messagebox.show (DateTimePicker1.value.tostring.tostring ());

i Obtenir cette valeur: "3/26/2010 1:26 pm".

Comment je peux supprimer le Time partie de la valeur.

Je sais que nous pouvons utiliser cette méthode xxx

mais je veux définir la propriété de valeur sur ce format "DD / Mm / aaaa " de sorte que la sortie sera comme celle-ci " 26/3/2010 ", car je veux stocker la valeur dans mon dB (SQL)

Comment puis-je faire ça?


1 commentaires

Si vous souhaitez stocker la date-partie de votre System.DateTime dans votre DB, pourquoi prenez-vous une chaîne formatée dans la DB? ... plutôt utiliser dentetimeepicker1.value.date.date puis stockez ceci dans votre colonne (qui pourrait être DateTime ou date - quel que soit votre DB.


5 Réponses :


16
votes

Utiliser dentetimepicker1.value.date.date pour obtenir la partie de date de cette valeur DateTime.

remarque cependant, si vous voulez analyser dans des chaînes, qu'utilisant DateTimePicker1.value.date.tostring, entraînera la chaîne "26/03/2010 00:00:00", tandis que en utilisant quelque chose comme mystring = cstr (denttimapicker1.value.date) entraînera MyString "26/03/2010".


0 commentaires

1
votes

juste messagebox.show (DateTimePicker1.value.tostring ("jj / mm / aaaa"));


4 commentaires

Je veux faire ceci: DateTimePicker.Value = 26/03/2010 Y a-t-il quelque chose que je peux faire ça?


DateTimePicker.Value = nouvelle dateTime (2010, 3, 26); ou DateTimeepicker.value = convert.todateTetime ("26/03/2010");


Utilisez parsexact comme ci-dessous. Substituez la chaîne de date dans le premier paramètre avec la variable de chaîne que vous avez dans votre programme. DateTime dtresult = datetime.parseexact ("26/03/2010", "d / m / aaaa", cultureinfo.invarianTculture); Voir ici pour plus d'informations MSDN.MICROSSOFT.COM/EN-US / Bibliothèque / ...


C'est dépendant de la culture et non considérée comme la meilleure pratique, car ce format est couvert par la méthode .toshortdateString ()



3
votes

Je suppose que vous avez initialisé le DateTimePicker avec la date et l'heure actuelles: xxx

à la place, l'initialisez-la avec la date actuelle: xxx

Que se passe-t-il comme suit:

  • Si l'utilisateur sélectionne une date, la propriété DateTimePicker.Value retourne toujours une date sans l'heure du composant de jour et DateTime.Kind Set à non spécifié .

  • Si l'utilisateur ne sélectionne pas une date, la propriété DateTimePicker.Value retournera la valeur utilisée pour initialiser la propriété DateTimePicker.value . Si vous l'initialisez avec DateTime.now , il aura une composante heure du jour et denttime.kind sera défini sur local . < / p>


0 commentaires

3
votes

Si vous avez une chaîne en tant que type de données dans la base de données: xxx pré>

si le type de données est DateTime: p>

  dateTimePicker1.Value.Date;


3 commentaires

Peut-être que vous pourriez expliquer comment cela répond à la question de l'OPS? Aussi - que se passe-t-il si un utilisateur a une culture différente sur sa machine?


Bien que ce code puisse répondre à la question, en fournissant un contexte supplémentaire concernant la raison et / ou la manière dont il répond à la question améliorerait de manière significative sa valeur à long terme. S'il vous plaît Modifier Votre réponse à ajouter une explication.


@ JasonMC92 Merci, je suis nouveau à Stackoverflow. J'ai ajouté des explications.



0
votes
dateTimePicker1.Value.ToString("dd-MM-yyyy")
This should work

1 commentaires

Bienvenue pour! Veuillez utiliser les options de formatage disponibles dans votre question et vos réponses. Donnez-lui un essai et Modifier votre réponse.