private void OnTimerTicked() { Dispatcher.Invoke(new Action(() => { if (!AutoPlay && _nextQueue.Count == 0 && _playImmediately == null) { _timer.Dispose(); _timer = null; return; } UpdateProperty(); Reset(); PlayStoryboard(() => { _timer.Change(Interval); }); })); }