是否可以使用DateTimePicker(Winforms)来选择日期和时间(在下拉列表中)?如何更改所选值的自定义显示?此外,是否可以让用户手动输入日期/时间?
将格式设置为自定义,然后指定格式:
dateTimePicker1.Format = DateTimePickerFormat.Custom; dateTimePicker1.CustomFormat = "MM/dd/yyyy hh:mm:ss";
或者你想要解决它.然后,您可以直接输入日期/时间.如果您使用MMM,则需要使用月份的数值进行输入,除非您自己编写一些代码(例如,5月的5个结果)
不要一起了解日期和时间的选择器.对我来说听起来像是一个自定义控件.
最好为Job One使用两个DateTimePickers,它们是日期部分的默认值,第二个DateTimePicker是时间部分.格式化第二个DateTimePicker,如下所示.
timePortionDateTimePicker.Format = DateTimePickerFormat.Time; timePortionDateTimePicker.ShowUpDown = true;
在捕获它们之后,这两个应该看起来像这样
要从这两个控件获取DateTime,请使用以下代码
DateTime myDate = datePortionDateTimePicker.Value.Date + timePortionDateTimePicker.Value.TimeOfDay;
要将DateTime分配给这两个控件,请使用以下代码
datePortionDateTimePicker.Value = myDate.Date; timePortionDateTimePicker.Value = myDate.TimeOfDay;
不幸的是,这是框架中的许多误解之一,或者充其量是违反SRP的.
若要将DateTimePicker用于时间,请将Format属性设置为Time或Custom(如果要使用CustomFormat属性控制时间格式,请使用Custom).然后将ShowUpDown属性设置为true.
虽然用户可以手动设置日期和时间,但是他们无法使用GUI来设置两者.
DateTime Picker可用于选择日期和时间,这就是它被称为"日期和时间选择器"的原因.您可以将" 格式 "属性设置为" 自定义 ",并设置不同格式说明符的组合,以在" 自定义格式 "属性中以不同格式表示/选择日期/时间.但是,如果要更改日期,则可以使用弹出日历,而在时间选择的情况下(在同一控件中,您必须使用向上/向下键来更改值.
例如,自定义格式" ddddd,MMMM dd,yyyy hh:mm:ss tt "会给你一个这样的结果:" 2009年8月20日星期四02:55:23 PM ".
您可以使用不同的格式说明符组合来满足您的需要,例如MMMM将给出" August ",而MM将给出" Aug "
转至Properties
你的dateTimePicker
Visual Studio中,并设置Format
到Custom
.在CustomFormat
输入您的格式.在我的情况下,我用过MMMMdd, yyyy | hh:mm