- У меня есть небольшое приложение, содержащее кнопку запуска и сброса в этом
таймерная программа.
- В обработчике события запуска кнопки у меня есть FileSystemWatcher и Timer
для вызова функции в определенное время.
У меня также есть другой таймер для обратного отсчета времени вызова timerCounter
только для визуальной помощи.
То, что я хочу, это снова нажать кнопку запуска, чтобы запустить программу
после нажатия кнопки «Стоп / Сброс», но не в состоянии сделать это.
![enter image description here](https://i.stack.imgur.com/TRIPl.png)
Ниже приведена часть кода, в которой я сомневаюсь, как перезапустить программу снова при start button
клике.
private void btnStart_Click(object sender, EventArgs e)
{
// file system watcher, timer and one other function inside this event handler
_timeLeft = (int)numUpDown.Value;
timerCounter.Start();
}
private void btnStop_Click(object sender, EventArgs e)
{
_timer.Stop();
timerCounter.Stop();
_timer.Dispose();
numUpDown.Value = 0;
timeLabel.Text = 0 + @" seconds";
lblResult.Text = @"Program has stopped, press start button to
process again.";
_fsw.Dispose();
}
private void timerCounter_Tick(object sender, EventArgs e)
{
if (_timeLeft > 0)
{
_timeLeft = _timeLeft - 1;
timeLabel.Text = _timeLeft + " seconds";
lblResult.Text = $@"Process began and counting down {timeLabel.Text} in seconds";
}
else
{
timerCounter.Stop();
timerCounter.Enabled = false;
timeLabel.Text = $@"Time's up";
}
}