Odpowiedzi:
Ustaw Format na Niestandardowy, a następnie określ format:
dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "MM/dd/yyyy hh:mm:ss";
lub jak chcesz to rozłożyć. Następnie możesz wpisać bezpośrednio datę / godzinę. Jeśli korzystasz z MMM, musisz użyć wartości liczbowej miesiąca do wpisu, chyba że sam napiszesz kod (np. 5 wyników w maju)
Nie wiem o wybieraniu razem daty i godziny. Dla mnie brzmi jak niestandardowa kontrola.
System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
i, System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern
aby uzyskać format dla bieżącej kultury. Łącze MSDN
Dim date As String = CultureInfo...ShortDatePattern Dim time As String = CultureInfo...ShortTimePattern dtpThing.Format = DateTimePickerFormat.Custom dtpThingEnd.CustomFormat = date + " " + time
Możesz również ograniczyć, powiedzmy, składnik czasu ręcznie: Dim date As String = CultureInfo...ShortDatePattern Dim time As String = CultureInfo...ShortTimePattern dtpThing.Format = DateTimePickerFormat.Custom dtpThingEnd.CustomFormat = date + " HH:mm"
Najlepiej jest użyć dwóch DateTimePickers dla zadania. Pierwsza będzie domyślna dla sekcji daty, a druga DateTimePicker dla części czasu. Sformatuj drugi DateTimePicker w następujący sposób.
timePortionDateTimePicker.Format = DateTimePickerFormat.Time;
timePortionDateTimePicker.ShowUpDown = true;
Po złapaniu Dwójka powinna wyglądać tak
Aby uzyskać DateTime z obu tych kontrolek, użyj następującego kodu
DateTime myDate = datePortionDateTimePicker.Value.Date +
timePortionDateTimePicker.Value.TimeOfDay;
Aby przypisać DateTime do obu tych kontrolek, użyj następującego kodu
datePortionDateTimePicker.Value = myDate.Date;
timePortionDateTimePicker.Value = myDate.TimeOfDay;
Niestety jest to jedna z wielu błędnych nazw w ramach lub w najlepszym przypadku naruszenie SRP.
Aby użyć DateTimePicker dla godzin, ustaw właściwość Format na Time lub Custom (użyj Custom, jeśli chcesz kontrolować format czasu za pomocą właściwości CustomFormat). Następnie ustaw właściwość ShowUpDown na true.
Chociaż użytkownik może ręcznie ustawić datę i godzinę, nie może użyć GUI do ustawienia obu.
Selektor dat i godzin może służyć do wybierania zarówno daty, jak i godziny, dlatego nazywa się go „Selektor daty i godziny”. Możesz ustawić właściwość „ Format ” na „ Niestandardowy ” i ustawić kombinację różnych specyfikatorów formatu do reprezentowania / wybierania daty / godziny w różnych formatach we właściwości „ Format niestandardowy ”. Jeśli jednak chcesz zmienić datę, możesz użyć kalendarza podręcznego, podczas gdy w przypadku wyboru czasu (w tej samej kontrolce musisz użyć klawiszy góra / dół do zmiany wartości.
Na przykład niestandardowy format „ ddddd, MMMM dd, rrrr gg: mm: ss tt ” da następujący wynik: „ Czwartek, 20 sierpnia 2009 14:55:23 ”.
Możesz pobawić się różnymi kombinacjami dla specyfikatorów formatu, aby dopasować je do swoich potrzeb, np. MMMM poda „ sierpień ”, podczas gdy MM poda „ sierpień ”
yyyy-MM-dd HH:mm
), a następnie zwrócić wartość, która odzwierciedla tylko część wyświetlanej daty i godziny. Nazwałbym to błędem, ale istnieje od dziesięcioleci ...
Przejdź do Properties
swojego dateTimePicker
w programie Visual Studio i ustaw Format
na Custom
. Pod CustomFormat
wprowadź swój format. W moim przypadku użyłemMMMMdd, yyyy | hh:mm
Obawiam się, że formant DateTimePicker nie ma możliwości wykonywania tych czynności. To dość prosta (i frustrująca!) Kontrola. Najlepszym rozwiązaniem może być znalezienie kontrolki innej firmy, która robi to, co chcesz.
W przypadku opcji ręcznego wpisywania daty i godziny można zbudować niestandardowy komponent z kombinacją TextBox / DateTimePicker, aby to osiągnąć, i może to działać całkiem dobrze, jeśli kontrolki innych firm nie są opcją.