public virtual void PrepareAndShow(WindowWithBackVM viewModel) { this.CleanupAndDisposeDataContext(); this.DataContext = viewModel; viewModel.SizePozitionProvider = this.SizePozitionProvider; viewModel.PrepareToShow(); this.SetSizeAndPos(viewModel); this.Show(); this.WindowState = this.StateToRestore; }
protected virtual void SetSizeAndPos(WindowWithBackVM viewModel) { if (!viewModel.SizePropertiesAreValid) { return; } this.Top = viewModel.Top; this.Left = viewModel.Left; this.Height = viewModel.Height; this.Width = viewModel.Width; this.WindowState = this.StateToRestore = viewModel.Maximized ? WindowState.Maximized : WindowState.Normal; }