private void Window_Loaded(object sender, RoutedEventArgs e) { timer = new DispatcherTimer(); timer.Interval = timerInterval; timer.Tick += timer_Tick; // MoveNext starts the timer MoveNext(); LayoutUtilities.PositionWindowOnPrimaryWorkingArea(this, HorizontalAlignment.Center, VerticalAlignment.Center); }
private void PositionWindow() { _isRepositioning = true; // suppress processing of LocationChanged events if (Enum.TryParse(Settings.Default.ToolDocking, out _currentDockState)) { // Restore last tool position var upperLeft = Settings.Default.ToolPosition; Left = upperLeft.X; Top = upperLeft.Y; AdjustOrientation(_currentDockState); } else { // Default tool position LayoutUtilities.PositionWindowOnPrimaryWorkingArea(this, HorizontalAlignment.Center, VerticalAlignment.Top); _currentDockState = DockState.Top; } _isRepositioning = false; // Now, raise LocationChanged event to do final repositioning this.OnLocationChanged(new EventArgs()); }