private void ShowPage(WizardPage page, int pageNumber)
{
if (page.Suppress)
{
ShowPage(GetNextPage());
return;
}
if (_currentShownPage != null)
{
_contentPanel.Controls.Remove(_currentShownPage);
}
_currentPageIndex = pageNumber;
_currentShownPage = page;
_currentShownPage.InvokeInitializeEvent();
_currentShownPage.Dock = DockStyle.Fill;
_currentShownPage.BeforeShow();
_contentPanel.Controls.Add(_currentShownPage);
_backButton.Enabled = _history.Count > 0;
_nextAndFinishedButton.Enabled = _currentShownPage.AllowNext;
_currentShownPage.AllowNextChanged -= _currentShownPage_AllowNextChanged;
_currentShownPage.AllowNextChanged += _currentShownPage_AllowNextChanged;
_history.Push(pageNumber);
}