简单的方法:
try{
DateTime.Parse(txtCreateDate.Text)
}
catch{}

解决方案 »

  1.   

    super76(龙) 说的有道理也可以这样的
    try{
    Convert.ToDateTime(strDate);
    }
    catch(Exception h)
    {
    MessageBox.Show(h.Message);
    }
      

  2.   

    Hexudong1979(何须懂何必懂) 的方法好
      

  3.   

    string test = "200q1219";//20031219是ok的,如果200q1219就不行 System.Text.RegularExpressions.Regex reg = new Regex(@"\b(?<year>\d{4})(?<month>\d{2})(?<day>\d{2})\b" ); bool flag = reg.IsMatch(test); if (flag==false)
    {
    MessageBox.Show("no"); }else
    {
    MessageBox.Show("yes");
    }
      

  4.   

    关于日期的正则表达式,可以到这里看看
    http://www.regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5
      

  5.   

    bool fIsDateAvailable()
    {
     try{
     Convert.ToDateTime(strDate);
     }
     catch{
     return false;
     }
     return true;
    }
      

  6.   

    tjq_tang(过河兵):
    string test = "20031233",它返回出来是true,但是string test = "20031212",它返回出来还是true,为什么阿?
      

  7.   

    可以在检验函数中加上日期的上限下限
    在这个区间返回true 
    否则false