想实现以下功能,通过点击Calender控件,把值放到textbox里,
现在已实现:TextBox.Text = Calendar1.SelectedDate.ToShortDateString();
点击Calender就传递数值过程。
问题是: 数值存的是(比如:2007-8-30),想在sql语句中的条件判断中加上读取的数值,然后进行数据查询。
可sql语句中有条件是这样的:zhxxb.open_date>='20070816',现在我想加上条件zhxxb.open_date<='20070830',(20070830)的值是读取Calendar1.SelectedDate.ToShortDateString()的值,那是不是要转化成20050830呢??
于是想到了截取,可是有时候可能会出现(2007-12-7,或2007-12-30)这种情况,无法substring通过对字符串的字符位置判断来取年,月,日。所以想不出什么好办法,我想要的结果是把(比如:2007-8-20)转化成20070820,20070820保存为字符串。。
谢谢大家帮忙!!!!!

解决方案 »

  1.   

    string sss="2007-8-20";
            string[] tm = sss.Split(new char[] { '-' });
            string year=tm[0].ToString();
                       string month=tm[1].ToString();
                       string day=tm[2].ToString();                   Label1.Text = year + month + day;
      

  2.   

    不知道这样可以吗
    Calendar1.SelectedDate.ToString("yyyyMMdd");
      

  3.   

    SelectedDate是一个DateTime类型的属性,它有Year,Month,Day等属性
      

  4.   

    DateTime d = Calendar1.SelectedDate;
    TextBox1.Text = d.Year.ToString()+d.Month.ToString()+d.Day.ToString();
    应该可以达到你的目的了吧?
      

  5.   

    SelectedDate.Year.ToString()+SelectedDate.Month.ToString()+SelectedDate.Day.ToString()
      

  6.   

    当然这样 Calendar1.SelectedDate.ToString("yyyyMMdd");是最简单的,如果要单独控制年月日就可以获取SelectedDate的相关属性
      

  7.   

    转换成datetime型 datetime.tostring("yyyy-MM-DD")
      

  8.   

    DateTime dt=DateTime.Now;
    dt.GetYear();
    dt.GetDay();
    dt.GetMonth();
      

  9.   

    SelectedDate.Year.ToString()+SelectedDate.Month.ToString()+SelectedDate.Day.ToString()
    ================
    我也这样用
      

  10.   

    可以自定义Calender的格式来保证不出错。