我正在使用秒錶。如果我選擇啓動按鈕,計時器運行良好。但是當我用下面的代碼再次按下按鈕時。然後計時器從00:00:00開始。我想暫停計時器,如果按下它,它應該再次從暫停時間開始,而不是從開始時間開始。如何做這個任務?任何其他想法也被接受。如何讓秒錶在Windows Phone中暫停?
private void Timer_Tick(object sender, EventArgs e)
{
TimeSpan runTime = TimeSpan.FromMilliseconds(System.Environment.TickCount - _startTime);
timeLabel.Text = runTime.ToString(@"hh\:mm\:ss");
}
private void StartButton_Click(object sender, RoutedEventArgs e)
{
if (_timer.IsEnabled)
{
_watcher.Stop();
_timer.Stop();
StartButton.Content = "Start";
}
else
{
_watcher.Start();
_timer.Start();
_startTime = System.Environment.TickCount;
StartButton.Content = "Stop";
}
}
是否在StartButton_Click中設置_startTime變量一次?如果你想計算兩次按鈕點擊之間的時間間隔,你只需要一個秒錶(這裏你使用了兩個我認爲是計時器和觀察者)。一次點擊將啓動它,其他點擊將停止它並將檢查Elapsed屬性以獲得時間跨度。 Stopwatch.Start()啓動或恢復秒錶不重置它 – Nitin
@nit:監視器屬於GeoCoordinateWatcher。當我按下它時,應用會停止跟蹤位置。觀察者與定時器不同。 –