我想在Textbox中输入时间格式为YYYY-MM-DD可是要怎么限制呢?
我写了一个正则表达式的代码可是不对?代码如下
  Regex riqi = new Regex("^((19|20)\\d{2})-((1[0-2])|([1-9]))-((3[0-1])|([1-2][0-9])|([1-9]))$");
            return !riqi.IsMatch(date);
请大家帮我看看给我提点建议,小妹在此谢过了!

解决方案 »

  1.   

    如果是WinForm,你可以试试看MaskedTextbox。
      

  2.   

    ^((((1[6-9]|[2-9]\d)\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\d|3[01]))|(((1[6-9]|[2-9]\d)\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\d|30))|(((1[6-9]|[2-9]\d)\d{2})-0?2-(0?[1-9]|1\d|2[0-8]))|(((1[6-9]|[2-9]\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$据说把闰年的2月的情况也考虑进去了 @@
      

  3.   

    DateTimePicker 是什么啊?可以给点代码吗 谢了
      

  4.   

    使用 Windows 窗体 DateTimePicker 控件,用户可以从日期或时间列表中选择单个项。在用来表示日期时,它显示为两部分:一个下拉列表(带有以文本形式表示的日期)和一个网格(在单击列表旁边的向下箭头时显示)
      

  5.   

    时间输入用控件就好了啊,网上很多
    然后在服务器端检查一下输入的合法性(WebForm)就可以了PS:小妹,给的分好少啊。。
      

  6.   

    DateTimePicker 是C#的标准控件啊,注意格式中的月 是要大写即:yyyy-MM-dd , 有时候还要修改下win系统的时间格式 。
      

  7.   

    我只想在textbox中自己输入时间,只要格式不对就会提醒“输入格式错误,请重新输入”。请大家帮帮忙
      

  8.   

    自己写控件呗.继承一下textbox.不过这个DateTimePicker很好用.winfrom窗体下的控件.
      

  9.   

    try
    {
    datetime.parse(textbox.text());
    }
    catch
    {
        messagebox.show("正确格式应为'1999-1-1'");
    }