我想做一个 Windows 窗体应用程序,它只显示一个计时器:
xx天xx小时xx分钟xx秒
- 没有设置计时器或任何东西的选项,我想在代码中这样做但是,问题是我希望它从当前时间(DateTime.Now)倒计时到特定日期。所以我最终将剩下的时间设置为 TimeSpan 类型。我现在怀疑如何实际显示它,所以它实际上正在工作,并且更新(倒计时)似乎找不到对我有帮助的教程,所以我希望我能在这里得到一些帮助:)
您可以使用时间跨度格式字符串和计时器:
DateTime endTime = new DateTime(2013,01,01,0,0,0);
private void button1_Click(object sender, EventArgs e)
{
Timer t = new Timer();
t.Interval = 500;
t.Tick +=new EventHandler(t_Tick);
TimeSpan ts = endTime.Subtract(DateTime.Now);
label1.Text = ts.ToString("d' Days 'h' Hours 'm' Minutes 's' Seconds'");
t.Start();
}
void t_Tick(object sender, EventArgs e)
{
TimeSpan ts = endTime.Subtract(DateTime.Now);
label1.Text = ts.ToString("d' Days 'h' Hours 'm' Minutes 's' Seconds'");
}
以下将为您提供倒计时字符串
//Get these values however you like.
DateTime daysLeft = DateTime.Parse("1/1/2012 12:00:01 AM");
DateTime startDate = DateTime.Now;
//Calculate countdown timer.
TimeSpan t = daysLeft - startDate;
string countDown = string.Format("{0} Days, {1} Hours, {2} Minutes, {3} Seconds til launch.", t.Days, t.Hours, t.Minutes, t.Seconds);
使用 ToDate.Subtract(Now) 然后您所要做的就是格式化您获得的 TimeSpan 并将其显示在表单上。
您应该能够在谷歌上搜索类似的内容并获得数百个结果。 http://channel9.msdn.com/coding4fun/articles/Countdown-to,这是第一个看起来不错的。