Ответ 1
Учитывая, что Start/Stop
переключает свойство IsEnabled
, ваше предположение близко.
Start/Stop
отличается как Interval
reset, где при простом переключении IsEnabled
не будет reset Interval
.
От MSDN:
Настройка IsEnabled на значение false, если таймер запускает таймер.
Значение IsEnabled равно true, если таймер останавливает таймер.
Запускает значение IsEnabled в true.
Начало сбрасывает интервал таймера.
EDIT: То, что я подразумеваю под интервалом reset, не является самим свойством Interval, а фоновым интервалом, определяющим, сколько времени будет продолжаться до следующего события тика.
Eg. Если у вас есть интервал в 1000 мс, и вы остановите/отключите его, если с 250 мс для запуска (он работает на 750 мс), это результат в зависимости от того, как вы его начинаете снова.
- Если вы запустите его с помощью
Start()
, тогда пройденный интервал будет reset обратно на 0 и будет 1000 мс до того, как событиеTick
будет поднято. - Если вы снова включите его с помощью
IsEnabled = true
, то он продолжит свое текущее местоположение, а событиеTick
будет поднято в 250 мс.
Надеюсь, это прояснит это для вас.