Antworten:
Setzen Sie das Format auf Benutzerdefiniert und geben Sie dann das Format an:
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "MM/dd/yyyy hh:mm:ss";
oder wie auch immer Sie es auslegen möchten. Sie können dann Datum und Uhrzeit direkt eingeben. Wenn Sie MMM verwenden, müssen Sie den numerischen Wert für den Monat für die Eingabe verwenden, es sei denn, Sie schreiben selbst Code dafür (z. B. 5 Ergebnisse im Mai).
Ich weiß nichts über den Picker für Datum und Uhrzeit zusammen. Klingt für mich nach einer benutzerdefinierten Steuerung.
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
und abrufen System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern
. MSDN Link
Dim date As String = CultureInfo...ShortDatePattern Dim time As String = CultureInfo...ShortTimePattern dtpThing.Format = DateTimePickerFormat.Custom dtpThingEnd.CustomFormat = date + " " + time
Sie mit @WaiHaLee überein: Sie können beispielsweise die Zeitkomponente auch manuell Dim date As String = CultureInfo...ShortDatePattern Dim time As String = CultureInfo...ShortTimePattern dtpThing.Format = DateTimePickerFormat.Custom dtpThingEnd.CustomFormat = date + " HH:mm"
Es ist am besten, zwei DateTimePicker für den Job zu verwenden. Einer ist die Standardeinstellung für den Datumsabschnitt und der zweite DateTimePicker für den Zeitabschnitt. Formatieren Sie den zweiten DateTimePicker wie folgt.
timePortionDateTimePicker.Format = DateTimePickerFormat.Time;
timePortionDateTimePicker.ShowUpDown = true;
Die beiden sollten so aussehen, nachdem Sie sie erfasst haben
Verwenden Sie den folgenden Code, um die DateTime von diesen beiden Steuerelementen abzurufen
DateTime myDate = datePortionDateTimePicker.Value.Date +
timePortionDateTimePicker.Value.TimeOfDay;
Verwenden Sie den folgenden Code, um diesen beiden Steuerelementen die DateTime zuzuweisen
datePortionDateTimePicker.Value = myDate.Date;
timePortionDateTimePicker.Value = myDate.TimeOfDay;
Leider ist dies eine der vielen Fehlbezeichnungen im Framework oder bestenfalls eine Verletzung von SRP.
Um den DateTimePicker für Zeiten zu verwenden, setzen Sie die Format-Eigenschaft entweder auf Time oder Custom (verwenden Sie Custom, wenn Sie das Format der Zeit mithilfe der CustomFormat-Eigenschaft steuern möchten). Setzen Sie dann die ShowUpDown-Eigenschaft auf true.
Obwohl ein Benutzer Datum und Uhrzeit manuell zusammen einstellen kann, kann er nicht über die GUI beide festlegen.
DateTime Picker kann verwendet werden, um sowohl Datum als auch Uhrzeit auszuwählen, weshalb es als "Date and Time Picker" bezeichnet wird. Sie können die Eigenschaft " Format " auf " Benutzerdefiniert " setzen und die Kombination verschiedener Formatbezeichner festlegen, um Datum / Uhrzeit in verschiedenen Formaten in der Eigenschaft " Benutzerdefiniertes Format " darzustellen / auszuwählen . Wenn Sie jedoch das Datum ändern möchten, kann der Popup-Kalender verwendet werden, während bei der Zeitauswahl (im selben Steuerelement müssen Sie die Auf- / Ab-Tasten zum Ändern der Werte verwenden.
Ein benutzerdefiniertes Format " TTDDT, MMMM TT, JJJJ HH: MM: SS TT " liefert beispielsweise das folgende Ergebnis: " Donnerstag, 20. August 2009, 14:55:23 Uhr ".
Sie können mit verschiedenen Kombinationen für Formatspezifizierer herumspielen , die Ihren Anforderungen entsprechen, z. B. MMMM gibt " August " an, während MM " Aug " gibt.
yyyy-MM-dd HH:mm
) und dann einen Wert zurückgeben, der nur einen Teil des angezeigten Datums und der angezeigten Uhrzeit widerspiegelt . Ich würde es einen Fehler nennen, aber es ist seit Jahrzehnten da ...
Gehen Sie zu Properties
Ihrem dateTimePicker
in Visual Studio und setzen Sie Format
auf Custom
. CustomFormat
Geben Sie unter Ihr Format ein. In meinem Fall habe ich verwendetMMMMdd, yyyy | hh:mm
Ich fürchte, das DateTimePicker-Steuerelement ist nicht in der Lage, diese Dinge zu tun. Es ist eine ziemlich einfache (und frustrierende!) Kontrolle. Ihre beste Option ist möglicherweise, ein Steuerelement eines Drittanbieters zu finden, das das tut, was Sie wollen.
Für die Option, Datum und Uhrzeit manuell einzugeben, können Sie eine benutzerdefinierte Komponente mit einer TextBox / DateTimePicker-Kombination erstellen, um dies zu erreichen. Dies funktioniert möglicherweise recht gut, wenn Steuerelemente von Drittanbietern keine Option sind.