编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

「Winform开发小技巧03」用DateTimePicker选择日期

wxchong 2024-09-11 10:51:40 开源技术 8 ℃ 0 评论

Hello,大家好,今天跟大家分享DateTimePicker的一些常用小技巧。


1、DateTimePicker显示格式

使用DateTimePicker的时候,会有不同的显示格式需求。

默认的格式有如“2021年9月4日”(Long),“2021/9/4”(Short),和只显示时间的”22:00“(Time),

有时候我们还需要同时显示日期和时间,如“2021/9/4 22:00:00”。

这个时候就需要使用到自定义格式(Customer)。

我们现在DateTimePicker的属性中找到Format,然后根据需求选择Long,Short,Time,Customer。

需要自定义格式的时候,首先在Format选择Customer,然后在另一个属性CustomerFormat后面输入我们需要的格式,如“2021/9/4 22:00:00”,我们需要输入“yyyy/MM/dd HH:mm:ss”,这里有个要注意的地方,代表24小时制的是HH,代表12小时制的是hh。所以如果要用12小时制来显示,就需要把格式改成“yyyy/MM/dd hh:mm:ss。

实际操作步骤看图:


2、与CheckBox搭配使用

如果我们在窗口加入了DateTimePicker,但又想将其变成可选的筛选条件,这时候我们可以将其与CheckBox搭配使用,通过判断CheckBox的Checked属性来确定是否将日期作为筛选条件。

if (this.checkBox1.Checked)
            {
                MessageBox.Show(this.dateTimePicker1.Text);
            }

实际操作步骤看图:



3、多个DateTimePicker联动

还有一种使用场景,就是需要选择一个时间区间,这个时候就需用到两个以上的DateTimePicker进行联动了。
这里也有一个小地方需要注意,就是区间的开始时间需要始终小于结束时间,这个可以通过代码来限制,我们分别在两个DateTimePicker的ValueChanged事件中进行操作,详细的代码如下:

private void dtpFrom_ValueChanged(object sender, EventArgs e)
        {
            if (dtpFrom.Value>dtpTo.Value)
            {
                dtpFrom.Value = dtpTo.Value;
            }
        }

private void dtpTo_ValueChanged(object sender, EventArgs e)
        {
            if (dtpFrom.Value > dtpTo.Value)
            {
                dtpFrom.Value = dtpTo.Value;
            }
        }

实际操作步骤看图:

非常感谢看到这里,如果我写的有哪里不对,欢迎评论区指正,有什么看法也欢迎评论区讨论哈。
最后,欢迎点赞转发收藏关注喔~

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表