Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 无法比较日期时间_C#_Windows_Forms_Datetime - Fatal编程技术网

C# 无法比较日期时间

C# 无法比较日期时间,c#,windows,forms,datetime,C#,Windows,Forms,Datetime,我正在尝试制作一个很酷的小程序,当它是一个特定的日期时,它会改变一个文本框或标签,上面写着什么 if (DateTime.Now.Equals(5/15/2016)) { textBox1.Text = "Kameron it's your f***ing birthday!"; label1.Text = "It's your birthday!"; } 像这样试试 if (DateTime.Now.ToShortDateString().Equals("5/16/2016"

我正在尝试制作一个很酷的小程序,当它是一个特定的日期时,它会改变一个文本框或标签,上面写着什么

if (DateTime.Now.Equals(5/15/2016))
{
    textBox1.Text = "Kameron it's your f***ing birthday!";
    label1.Text = "It's your birthday!";
}
像这样试试

if (DateTime.Now.ToShortDateString().Equals("5/16/2016"))
{
     textBox1.Text = "Kameron it's your f***ing birthday!";
     label1.Text = "It's your birthday!";
}

您可以将其转换为
DateTime
并比较
DateTime的
Date
部分。现在

if (DateTime.Now.Date.Equals(new DateTime(2016,5,15)))
{
      textBox1.Text = "Kameron it's your f***ing birthday!";
      label1.Text = "It's your birthday!";
}
或者(正如@rob所建议的),您可以使用
DateTime.Today
并进行比较

if( DateTime.Today.Equals(new DateTime(2016,5,15)))
{
   ....
}

如果你做到了,恭喜你。。现在问题是什么…我想知道为什么?还有一种方法,我可以添加一个时间,比如12小时形式的当前时间,而不是24小时形式的时间吗?我有一个计时器中的代码,所以当程序加载时,它会启动计时器。但它什么也没做我想让它做的。它不会更改文本框文本或标签文本。您不能只在代码中的任何位置键入日期。您需要创建一个表示2016年5月15日的日期对象。例如,
DateTime.Today.Equals(newdatetime(2016,05,15))
。下次,请向我们展示您收到的错误消息,而不是说“它不工作”-它不工作是很清楚的,因为问题是存在的,不必猜测您面临的问题是很好的。这只会在世界上的某些地方起作用-调试起来很有趣;)。如果
DateTime
已经提供了比较方法,则没有理由将日期转换为字符串。小建议:
DateTime。现在。date
可以简单地替换为
DateTime。今天
:)