在标签上显示 HH:MM:SS 的计时器

Osc*_* vs 0 c# datetime date

尝试显示一个运行时,它将显示 HH:MM:SS 到目前为止,我让 SS 部分正常工作。但一旦达到 60 就会跳回 00。

到目前为止我得到的代码是:

DateTime startTime;
startTime = DateTime.Now;
timer1.Tick += (s, ev) => { lb_runnerStatus.Text = String.Format("{0:00}", (DateTime.Now - startTime).Seconds); };
startTime = DateTime.Now;
timer1.Interval = 100;       // every 1/10 of a second
timer1.Start();
Run Code Online (Sandbox Code Playgroud)

是否可以让它显示 00:00:01 以及在 1 分钟时显示 00:01:00 等等。

Ňuf*_*Ňuf 5

您可以简单地调用实例.ToString()上的方法TimeSpan,它将stringHH:MM:SS格式返回:

lb_runnerStatus.Text = (DateTime.Now - startTime).ToString(); 
Run Code Online (Sandbox Code Playgroud)

如果您需要更高级的格式,请使用.ToString(string format)重载,您可以使用Standard TimeSpan FormatCustom TimeSpan Format指定所需的格式,例如以下将包括毫秒:

lb_runnerStatus.Text = (DateTime.Now - startTime).ToString("hh\\:mm\\:ss\\.fff"); 
Run Code Online (Sandbox Code Playgroud)