2

I set a timer

DispatcherTimer messageTimer = new DispatcherTimer();
messageTimer.Tick += new EventHandler(messageTimer_Tick);
messageTimer.Interval = new TimeSpan(0, 0, 1);

And a

<Label Name="time"  Grid.Column="5" Grid.Row="1"   />

How to caculate the run time and show it in the label?

4

1 回答 1

5

使用计时器正是您所需要的。这是您想如何使用它的想法...

当您的应用程序启动时,您需要存储当前系统时间,您可以使用静态属性执行此操作:

public static DateTime StartTime = DateTime.Now;

(或者,您可以从其他地方设置此值,例如Main()函数)

然后像往常一样使用Tick事件创建计时器。不要忘记启动你的计时器!

然后在您的Tick事件处理程序中,您可以计算经过的时间并更新标签:

public void messageTimer_Tick()
{
   TimeSpan elapsedTime = DateTime.Now - StartTime;
   myLabel.Content = elapsedTime.ToString("HH:mm:ss");
}
于 2013-06-14T11:19:47.430 回答