2015-05-02 128 views
0

我想在我的应用与显示倒计时:时间跨度倒计时

private TimeSpan ts = new TimeSpan() 


ts = ts.Subtract(TimeSpan.FromSeconds(1)); 
label4.Text = ts.ToString(@"hh\:mm\:ss"); 

但是,它不会显示倒计时,但实际上时间增加。如果我删除@"hh\:mm\:ss"部分,然后我得到以秒倒计时,但不是真正的倒计时。它所做的是,它增加了秒钟后一个减号,所以它并-1, -2, -3,等...我希望它去从10 to 0 so -9, -8, -7,等说...

我怎么能有在hh:mm:ss形式真正的倒计时?

+0

这个问题问得好,简单的答案,+1 –

回答

4

初始化TS〜10:(您目前它初始化为0,递减到)

private TimeSpan ts = TimeSpan.FromSeconds(10) 
... 
ts = ts.Subtract(TimeSpan.FromSeconds(1)); 
label4.Text = ts.ToString(@"hh\:mm\:ss"); 
0

你的代码总是减去0秒的时间跨度是1秒的时间跨度。

也许您正在寻找这样的事情:

public string PrettyTimespan(DateTime finalDate) 
{ 
    return (finalDate - DateTime.Now).ToString(@"hh\:mm\:ss"); 
}