private void OnUnloaded(object sender, RoutedEventArgs e) { if (!_loaded) return; _loaded = false; if (_timer != null) { _timer.Tick -= OnTick; _timer.Stop(); } } private void OnTick(object sender, EventArgs e) {