private void Model_SelectedPageChanged(object sender, SelectedPageEventArgs e) { if (_model.CurrentPagePosition == e.PagePosition) { return; } if (_model.CurrentPage.IsLastPage && _model.CurrentPage.IsComplete) { return; } if (!_model.CanMoveToPage(e.PagePosition, out var message)) { if (!string.IsNullOrEmpty(message)) { MessageBox.Show(message, _model.WindowTitle, MessageBoxButton.OK, MessageBoxImage.Information); } return; } _model?.SetCurrentPage(e.PagePosition); }