0

我正在根据 Asp.net 中的来自字段和收件人字段的两个日期搜索数据

我想阻止用户输入大于截止日期的起始日期并向用户显示消息 请选择有效的日期范围

  DateTime InvoiceDateFrom = new DateTime();
DateTime InvoiceDateTo = new DateTime();

if (TxtInvoiceDateFrom.Text.Trim() != "")
{

  //DateTime FromDate = DateTime.ParseExact(TxtInvoiceDateFrom.Text.Trim(), "dd/MM/yyyy", null).AddDays(1);
  InvoiceDateFrom = Convert.ToDateTime(TxtInvoiceDateFrom.Text);
  //DateTime toDate = DateTime.ParseExact(TxtInvoiceDateTo.Text.Trim(), "dd/MM/yyyy", null).AddDays(1);

}

if (TxtInvoiceDateTo.Text.Trim() != "")
{
  InvoiceDateTo = Convert.ToDateTime(TxtInvoiceDateTo.Text);
}
4

3 回答 3

2
if (InvoiceDateTo < InvoiceDateFrom)
    MessageBox.Show("Please select a valid date range.");
于 2012-11-28T16:32:33.463 回答
1
 DateTime x = DateTime.Parse("12/8/2012");   //as "12/8/2012" is the your specified date
 dateTimePicker1.MaxDate = x; // or you can use it in one line

如果您想阻止用户选择大于今天的日期:

dateTimePicker1.MaxDate = DateTime.Today;
于 2014-04-10T10:40:28.333 回答
-1

请看看这是否有帮助!C# 的做法很好。但我宁愿建议使用 javascript。

DateTime toDate=DateTime.ParseExact(todateString,"dd/MM/yy",System.Globalization.InvariantCulture);
DateTime fromDate=DateTime.ParseExact(fromdateString,"dd/MM/yy",System.Globalization.InvariantCulture);

int comparison=DateTime.Compare(toDate,fromDate);

if(comparison>=0)
{
     //Post custom error message.
}
于 2012-11-28T16:35:40.137 回答