我在页面做了一个计时器,用来倒计时用
private void timer_Tick(object sender, EventArgs e) { int time; time = ts.Seconds; if (time >= 10) { labTimer.Content= "剩余时间:" + time.ToString(); } if (time < 10) { labTimer.Content= "剩余时间:" + "0" + time.ToString(); } ts = ts.Subtract(new TimeSpan(0, 0, 1));// 时间以1秒 倒计时 if (ts.TotalSeconds < -1) { timer.Stop(); ....//我要执行的操作 } } public void StartTimer() { timer.Tick += new EventHandler(timer_Tick); timer.Interval = new TimeSpan(0, 0, 1); timer.Start();//倒计时开始 }
可是倒计时的时候出了问题,我是想实现当倒计时到0的时候执行我要的操作,然后等操作完了继续倒计时,循环操作。但是那个倒计时每次倒计时到1的时候就执行了操作,然后重新倒计时的时候它不是从30开始(倒计时设置30秒),而是从0开始的,就是说我要的倒计时是30、29、28.....3、2、1、0,它现在是0、30、29、28......3,、2、1,怎么回事?