我有当用户使用日历,我检查文本框是否为空或不如何检查日期时间进入
if ((string.IsNullOrEmpty(txt_SendAt.Text) == false)
如何检查是否进入了日期时间进入日期时间的文本框小于或=当前日期时间
我有当用户使用日历,我检查文本框是否为空或不如何检查日期时间进入
if ((string.IsNullOrEmpty(txt_SendAt.Text) == false)
如何检查是否进入了日期时间进入日期时间的文本框小于或=当前日期时间
Parse
或TryParse
文本DateTime
,然后比较DateTime.Now
DateTime enteredDateTime;
if (!DateTime.TryParse(txt_SendAt.Text, out enteredDateTime))
{
Debug.WriteLine("User entered date time in wrong format");
}else
{
if(enteredDateTime <= DateTime.Now)
{
// less or equal
}
}
几个在这里的步骤,首先检查东西进入,因为你做了,其次,检查它实际上是一个日期,最后检查期望的日期,因此:
var input = DateTextBox.Text;
if (!string.IsNullOrEmpty(input))
{
DateTime date;
if (DateTime.TryParse(input, out date))
{
if (date <= DateTime.Now)
{
//bingo!
}
}
}
请注意TryParse
用于检查输入字符串的正确格式作为日期 - 仅使用Parse
是让您的应用程序运行的确定方法BANG!
可以使用DateTime.Parse
方法解析你的字符串输入到DateTime
,然后运行在正常方式的比较。
请记住,如果输入不能直接转换为所需的类型,则方法将抛出FormatException
。例如,如果您有自由文本输入,则可以选择TryParse方法更有意义。
var inputDate = DateTime.Parse(txt_SendAt.Text);
if (inputDate > DateTime.Now)
{
Console.WriteLine("DateTime entered is after now.");
}
else if (inputDate < DateTime.Now)
{
Console.WriteLine("DateTime entered is before now.");
}
if (!(string.IsNullOrEmpty(txt_SendAt.Text) && Datetime.Parse(txt_SendAt.Text)<=Datetime.Now)
{
/*code */
}
else
{
/*code */
}
你说 “使用日历” - 你到底是什么意思?你有权访问日历控件吗? –