DateTimePicker: 同时选择日期和时间

是否可以使用 DateTimePicker (Winforms)同时选择日期和时间(在下拉列表中) ?如何更改选取值的自定义显示?另外,是否可以允许用户手动输入日期/时间?

293354 次浏览

不幸的是,这只是框架中许多用词不当之一,或者充其量是违反了 SRP。

若要对时间使用 DateTimePicker,请将 Format 属性设置为 Time 或自定义(使用自定义,如果你想控制时间的格式使用 然后将 ShowUpDown 属性设置为 true。

虽然用户可以手动设置日期和时间,但他们不能使用 GUI 同时设置这两个日期和时间。

将“格式”设置为“自定义”,然后指定格式:

dateTimePicker1.Format = DateTimePickerFormat.Custom;
dateTimePicker1.CustomFormat = "MM/dd/yyyy hh:mm:ss";

或者你想怎么说就怎么说。然后可以直接键入日期/时间。如果您使用 MMM,那么您需要使用该月份的数值作为条目,除非您自己为此编写了一些代码(例如,5月份的5个结果)

不知道采摘日期和时间在一起。听起来像一个自定义控制对我来说。

您可以让它显示 时间。从那时起,你可能必须有两个控件(一个日期,一次)来完成你想要的。

恐怕 DateTimePicker 控件无法执行这些操作。这是一个相当基本的(和令人沮丧的!)控制。您最好的选择可能是找到一个第三方控件来做您想做的事情。

对于手动输入日期和时间的选项,您可以使用 TextBox/DateTimePicker 组合构建一个自定义组件来实现这一点,如果不使用第三方控件,那么它可能工作得相当不错。

日期时间选择器可以用来选择日期和时间,这就是为什么它被称为“日期和时间选择器”。您可以将“ 格式”属性设置为“ 习俗”,并将不同格式说明符的组合设置为在“ 自定义格式”属性中以不同格式表示/拣选日期/时间。但是,如果您想更改 Date,那么可以使用弹出式日历,而在 Time 选择的情况下(在同一控件中,您必须使用 up/down 键来更改值。

例如,自定义格式“ 滴滴滴,滴滴滴,滴滴滴”将给出如下结果: “ 2009年8月20日星期四02:55:23 PM”。

你可以尝试使用不同的格式说明符组合,以配合你的需要,例如 会显示“ 奥古斯特”,而 会显示“ 八月

最好在作业中使用两个 DateTimePicker 一个是 date 部分的默认值,第二个 DateTimePicker 是 time 部分的默认值。按如下格式设置第二个 DateTimePicker。

      timePortionDateTimePicker.Format = DateTimePickerFormat.Time;
timePortionDateTimePicker.ShowUpDown = true;

你抓住他们之后,他们两个应该是这个样子

Two Date Time Pickers

若要从这两个控件获取 DateTime,请使用以下代码

DateTime myDate = datePortionDateTimePicker.Value.Date +
timePortionDateTimePicker.Value.TimeOfDay;

若要将 DateTime 分配给这两个控件,请使用以下代码

datePortionDateTimePicker.Value  = myDate.Date;
timePortionDateTimePicker.Value  = myDate.TimeOfDay;

在 VisualStudio 中转到 dateTimePickerProperties,并将 Format设置为 Custom。在 CustomFormat下输入您的格式。在我的情况下,我使用 MMMMdd, yyyy | hh:mm

enter image description here
dateTimePickerProperties

如果你需要(24小时)军事时间,你应该用“ HH”而不是“ HH”。

“ MM/dd/yyyy HH: MM”