C# DateTimePicker控件用法详解(附带实例)
DateTimePicker 可以翻译为日期时间选择器,图标为:
我们可以利用这个控件选择日期,然后执行更多与日期和时间有关的操作,如设定日历、闹钟或其他操作。
如果没有选择并更改日期,默认显示今天日期。
【实例 1】创建 DateTimePicker 控件,同时显示年、月、日、时、分和秒。
注意,这个程序只是让读者体会 DateTimePicker 控件的 Value 属性,更好的设计是在重新选择日期时,窗体可以同步更新数据。
下列使用短日期和时间格式输出 DateTimePicker 的日期和时间:
【实例 2】创建按钮设定 DateTimePicker 控件对日期和时间有不同输出的格式。
当将 DateTimePicker 对象的 Format 设为 Custom 后,如下所示:
【实例 3】设计含有日期与时间格式的 DateTimePicker。
1) ShowCheckBox 属性:默认是 false,如果设为 true 可以显示复选框:
2) Checked 属性:当 ShowCheckBox 属性是 true 时,可以由此了解是否勾选了复选框。
3) ShowUpDown 属性:默认是 false,代表读者不可以使用右边的上下按钮图标来选择日期。如果是 true,则可以使用上下按钮来选择日期。
4) MaxDate属性:可以选择日期的最晚时间,默认是 12/31/9998 12 am。
5) MinDate属性:可以选择日期的最早时间,默认是 1/1/1753 00:00:00。
【实例 4】重新设计实例 1,当有新选择的日期时,会更新显示。
这个程序在加载和重新选择日期时,会更新显示所选日期的信息。

我们可以利用这个控件选择日期,然后执行更多与日期和时间有关的操作,如设定日历、闹钟或其他操作。

如果没有选择并更改日期,默认显示今天日期。
C# DateTimePicker Value属性
DateTimePicker 控件最重要的属性是 Value,这个属性可以设定日期与时间显示的方式,同时也可以使用这个属性,配合 DateTime 对象属性获得更详细的日期与时间信息,下列是常用的日期与时间信息。int year = dateTimePicker1.Value.Year; // 回传年 int month = dateTimePicker1.Value.Month; // 回传月 int day = dateTimePicker1.Value.Day; // 回传日 int hour = dateTimePicker1.Value.Hour; // 回传时 int minute = dateTimePicker1.Value.Minute; // 回传分 int second = dateTimePicker1.Value.Second; // 回传秒
【实例 1】创建 DateTimePicker 控件,同时显示年、月、日、时、分和秒。

namespace ch
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
txtYear.Text = dateTimePicker1.Value.Year.ToString();
txtMonth.Text = dateTimePicker1.Value.Month.ToString();
txtDay.Text = dateTimePicker1.Value.Day.ToString();
txtHour.Text = dateTimePicker1.Value.Hour.ToString();
txtMinute.Text = dateTimePicker1.Value.Minute.ToString();
txtSecond.Text = dateTimePicker1.Value.Second.ToString();
}
}
}
执行结果为:
注意,这个程序只是让读者体会 DateTimePicker 控件的 Value 属性,更好的设计是在重新选择日期时,窗体可以同步更新数据。
C# DateTimePicker Format属性
DateTimePicker 控件有 4 种显示日期和时间的方式:- Long:长日期格式,例如 2025年 6月30日,这是默认项;
- Short:短日期格式,例如 2025/6/30。
- Time:显示时间,例如 下午 03:10:50;
- Custom:可以自行设定输出格式,格式设定可以使用 DateTime 对象。
下列使用短日期和时间格式输出 DateTimePicker 的日期和时间:
// 设置日期时间选择器为短日期格式(例如:2026/6/30) dateTimePicker1.Format = DateTimePickerFormat.Short; // 设置日期时间选择器为时间格式(例如:14:30:00) dateTimePicker1.Format = DateTimePickerFormat.Time;
【实例 2】创建按钮设定 DateTimePicker 控件对日期和时间有不同输出的格式。

namespace ch
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
// 设置日期时间选择器为短日期格式
private void btnShort_Click(object sender, EventArgs e)
{
dateTimePicker1.Format = DateTimePickerFormat.Short;
}
// 设置日期时间选择器为长日期格式
private void btnLong_Click(object sender, EventArgs e)
{
dateTimePicker1.Format = DateTimePickerFormat.Long;
}
// 设置日期时间选择器为时间格式
private void btnTime_Click(object sender, EventArgs e)
{
dateTimePicker1.Format = DateTimePickerFormat.Time;
}
}
}
执行结果为:
当将 DateTimePicker 对象的 Format 设为 Custom 后,如下所示:
dateTimePicker1.Format = DateTimePickerFormat.Custom;就可以使用 CustomerFormat 属性搭配设定日期和时间的显示方式,设定自己的日期和时间格式,下列是同时显示日期与时间的语句:
dateTimePicker1.CustomerFormat = “yyyy年MM月dd日hh时mm分ss秒”;
【实例 3】设计含有日期与时间格式的 DateTimePicker。

namespace ch
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// 设置日期时间选择器为自定义格式
dateTimePicker1.Format = DateTimePickerFormat.Custom;
// 设置自定义格式字符串
dateTimePicker1.CustomFormat = "yyyy年MM月dd日hh时mm分ss秒";
}
}
}
执行结果为:
C# DateTimePicker其他常用的属性
下列是 DateTimePicker 其他常用的属性:1) ShowCheckBox 属性:默认是 false,如果设为 true 可以显示复选框:

2) Checked 属性:当 ShowCheckBox 属性是 true 时,可以由此了解是否勾选了复选框。
3) ShowUpDown 属性:默认是 false,代表读者不可以使用右边的上下按钮图标来选择日期。如果是 true,则可以使用上下按钮来选择日期。

4) MaxDate属性:可以选择日期的最晚时间,默认是 12/31/9998 12 am。
5) MinDate属性:可以选择日期的最早时间,默认是 1/1/1753 00:00:00。
C# DateTimePicker常使用的事件
如果控件的日期和时间改变则会产生 ValueChanged 事件。【实例 4】重新设计实例 1,当有新选择的日期时,会更新显示。
namespace ch
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
// 日期时间选择器值改变时触发
private void dateTimePicker1_ValueChanged(object sender, EventArgs e)
{
ShowDate(); // 显示日期信息
}
// 显示日期信息的方法
private void ShowDate()
{
txtYear.Text = dateTimePicker1.Value.Year.ToString();
txtMonth.Text = dateTimePicker1.Value.Month.ToString();
txtDay.Text = dateTimePicker1.Value.Day.ToString();
txtHour.Text = dateTimePicker1.Value.Hour.ToString();
txtMinute.Text = dateTimePicker1.Value.Minute.ToString();
txtSecond.Text = dateTimePicker1.Value.Second.ToString();
}
// 窗体加载时触发
private void Form1_Load(object sender, EventArgs e)
{
ShowDate(); // 显示日期信息
}
}
}
执行结果为:
这个程序在加载和重新选择日期时,会更新显示所选日期的信息。
ICP备案:
公安联网备案: