В моем проекте, когда я запускал и заканчивал таймер с помощью кнопок «Пуск» и «Стоп» в первый раз, он работал бы нормально.
Но когда я снова нажал кнопку «Пуск», не выключая программу, он начал вставлять данные дважды за интервал, как будто работали два таймера.
Третий и четвертый раз, когда я повторил, это показало ошибку вставки.
Ниже приведен мой обобщенный код, я думаю, что это не полная остановка. Я думаю, это пауза и дублирование.
Я сделал что-то не так?
public partial class Window1 : Window
{ DispatcherTimer timer = new DispatcherTimer();
private void btnStart_Click(object sender, RoutedEventArgs e)
{
timer.Interval = TimeSpan.FromMilliseconds(1000);
timer.Tick += new EventHandler(timer_Tick);
timer.Start();
}
private void timer_Tick(object sender, EventArgs e)
{
//data insert
}
private void btnStop_Click(object sender, RoutedEventArgs e)
{
timer.Stop();
}
}