C#datetimepicker如果等于今天,则勾选复选框,否则不勾选/取消勾选

C#datetimepicker如果等于今天,则勾选复选框,否则不勾选/取消勾选,c#,datetime,if-statement,datetimepicker,C#,Datetime,If Statement,Datetimepicker,我试图设置一个复选框(notTodayCheckBox),如果datetimepicker(datetimepicker)选择了今天,则不会选中该复选框,如果选择的不是今天,则会选中该复选框 如果选择的日期不是今天,我当前的代码会勾选该框,但是如果我将其改回今天,该框不会取消勾选 当前代码: private void DateTimePicker_ValueChanged(object sender, EventArgs e) { DateTime check; if (Da

我试图设置一个复选框(
notTodayCheckBox
),如果datetimepicker(
datetimepicker
)选择了今天,则不会选中该复选框,如果选择的不是今天,则会选中该复选框

如果选择的日期不是今天,我当前的代码会勾选该框,但是如果我将其改回今天,该框不会取消勾选

当前代码:

private void DateTimePicker_ValueChanged(object sender, EventArgs e)
{
     DateTime check;
     if (DateTime.TryParse(dateTimePicker.Text, out check) && check != DateTime.Now)
     {
          notTodayCheckBox.Checked = true;
     }
     else if (DateTime.TryParse(dateTimePicker.Text, out check) && check == DateTime.Now)
     {
          notTodayCheckBox.Checked = false;
     }
}

DateTime。现在
中有一个时间元素,可能您的日期选择器设置在不同的时间,即使一秒钟也会使它们不相等

如果你只是在约会之后,不在乎时间

检查
日期时间转换为
ShortDateString()

它将两者视为
字符串
,格式为
mm/dd/yyyy

check.ToShortDateString()==DateTime.Now.ToShortDateString()

还是按照勒内·沃格特的说法

check.Date==DateTime.Today
DateTime.Now.Date

两者都将返回
DateTime
,时间设置为
12:00:00AM
DateTime。现在
中有一个时间元素,可能您的日期选择器设置在不同的时间,即使一秒钟也会使它们不相等

如果你只是在约会之后,不在乎时间

检查
日期时间转换为
ShortDateString()

它将两者视为
字符串
,格式为
mm/dd/yyyy

check.ToShortDateString()==DateTime.Now.ToShortDateString()

还是按照勒内·沃格特的说法

check.Date==DateTime.Today
DateTime.Now.Date

两者都将返回
DateTime
,时间设置为
12:00:00AM

问题是您正在用DateTime(DateTime.Now)检查DateTime,这就是为什么它始终保持为false的原因。您好,您必须将日期与DateTime.compare(check,DateTime.Now)进行比较。另外,最好只解析Datetimpicker.text一次。另一个问题是datetime还包含分钟、秒等。因此,只有当所有组件都相同时,日期才是相同的。问题是,您正在用datetime(datetime.Now)和date进行检查,这就是为什么它始终保持为false的原因。您好,您必须将日期与datetime.compare(check,datetime.Now)进行比较。另外,最好只解析Datetimpicker.text一次。另一个问题是datetime还包含分钟、秒等。因此,只有当所有组件都相同时,日期才是相同的。或者简单地使用
check.Date==DateTime.Today
@RenéVogt是的,忘记了,我可以把它添加到我的答案中吗?或者你可以加上你的,我会投票给你:)或者简单地使用
check.Date==DateTime.Today
@RenéVogt是的,忘了这一点,我可以把它加在我的答案上吗?或者你可以加上你的,我会投票给你的:)