c# 怎么判断现在的时间是否等于dateTimePicker里面设置的时间

2025-03-01 13:14:50
推荐回答(4个)
回答1:

if (DateTime.Now == dateTimePicker1.Value)
{
...
}
这样就行了。。。因为 DateTime类已经重载了 == 操作符,直接可以等号比较。
注意。这个比较是到时钟的毫秒级的。所以如果只要比时分秒时间是否相等,要自己实现。
写成
if (DateTimeEquals(DateTime.Now, dateTimePicker1.Value)
{
...
}
private static bool DateTimeEquals(DateTime d1, DateTime d2)
{
if (d1.Hour != d2.Hour)
return false;
if (d1.Minute != d2.Minute)
return false;
return d1.Second == d2.Second;
}

回答2:

刚才加上年月了。。。。
this.dateTimePicker1.Value.ToString("HH:mm:ss");
这样写能得到时间 但是会有误差 因为这个时间是你加载控件的时间 秒是不会动的
除非在你点击提交的时候从新赋值

回答3:

你的dateTimePicker是什么类型,Value是什么格式,如果确定格式匹配,就看一下==两边的字符串是不是一样,可以输出来看一下。

回答4:

if (DateTime.Now == dateTimePicker1.Value)
{
...
}
这样不行么。