private void button2_Click(object sender, EventArgs e)
{
   lbDao.Text = dateTimePicker2.Value.ToString();
   timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
   int i = 0;
   i++;
   lbDao.Text = (DateTime.Parse(lbDao.Text.ToString())).AddSeconds(-i).ToString();
   timer1.Interval = 1000;
}
我这样做出来的结果是 2008-5-29 16:11:59 一点点的减少 
但是前面这个2008-5-29不是我要的效果 
我想实现点完之后    剩余时间20天16:11:59 这样的效果
请问哪位大侠帮一下啊
在线等

解决方案 »

  1.   

    你减去日期项就不能用AddSeconds这个方法了
      

  2.   


            DateTime dueTime = new DateTime(2008, 8, 8);
            private void button2_Click(object sender, EventArgs e)
            {
                timer1.Start();
                timer1_Tick(this, EventArgs.Empty);
            }
            private void timer1_Tick(object sender, EventArgs e)
            {
                TimeSpan ts = dueTime - DateTime.Now;
                lbDao.Text = string.Format("剩余时间{0}天{1}:{2}:{3}", ts.TotalDays, ts.Hours, ts.Minutes, ts.Seconds);
                timer1.Interval = 1000;
            } 
      

  3.   


    private void timer1_Tick(object sender, EventArgs e)
            {
                DateTime dt = new DateTime(2008, 8, 8,18,0,0);
                TimeSpan ts = dt - DateTime.Now;
                lbDao.Text = string.Format("距离奥运会开幕还有{0}天 {1}:{2}:{3}", ts.TotalDays, ts.Hours, ts.Minutes, ts.Seconds);
                timer1.Interval = 1000;
            } 
      

  4.   

     Text = string.Format("距离奥运会开幕还有{0}天 {1}:{2}:{3}", ts.Days, ts.Hours, ts.Minutes, ts.Seconds);
      

  5.   


    格式是N天N:NN:NN ,想要什么格式自己变变就行了!
      private void timer1_Tick(object sender, EventArgs e)
            {
               
                DateTimeConverter TimeC = new DateTimeConverter();
                DateTime ETime = new DateTime();
                ETime = (DateTime)TimeC.ConvertFromString("2008-8-8 8:00");
                DateTime newtime = DateTime.Now;
                TimeSpan lastTS = ETime.Subtract(newtime);            
                this.label1.Text =lastTS .Days.ToString ()+"天"+ lastTS.Hours+":"+lastTS.Minutes+":"+lastTS .Seconds;        }
      

  6.   

    text=string.Format("距离奥运会开幕还有{0}天 {1}:{2}:{3}", (Int)ts.Days, ts.Hours, ts.Minutes, ts.Seconds);