Элемент управления "WizardConrol"

Элемент управления WizardControl позволяет облегчить процесс создания стандартных мастеров (последовательность форм с возможностью навигации вперед/назад). Внешний вид элемента управления:

Элемент управления "WizardConrol"
Рисунок 1. Элемент управления "WizardConrol"

Свойства

  • int ButtonHeight — высота стандартных кнопок (Back, Next, Cancel, Finish).

  • int ButtonWidth — ширина стандартных кнопок (Back, Next, Cancel, Finish).

  • int HorizontalSpacing — расстояние между кнопками по горизонтали.

  • int VerticalSpacing — расстояние между кнопками по вертикали.

  • string BackButtonText — текст кнопки Back.

  • string CancelButtonText — текст кнопки Cancel.

  • string FinishButtonText — текст кнопки Finish.

  • string HelpButtonText — текст кнопки Help.

  • System.Drawing.SizeDefaultSize — начальный размер элемента управления.

  • System.Windows.Forms.FlatStyleFlatStyle — стиль отрисовки элемента управления.

  • bool HelpButtonVisible — признак, отображать ли кнопку помощи (Help).

Набор шагов мастера задаётся при помощи коллекции WizardPages — которую можно редактировать, используя специальный визуальный редактор:

Визуальный редактор WizardControl
Рисунок 2. Визуальный редактор WizardControl

Редактор позволяет добавить произвольное количество страниц (шагов мастера), а также менять порядок их следования. Каждая страница имеет единственное значимое свойство — Text, которое позволяет определить заголовок страницы.

После определения всех страниц, они появляются в мастере, и можно добавлять интерактивные элементы управления непосредственно на них. Переход между страницами при этом осуществляется с помощью стандартных навигационных кнопок мастера.

Для завершения разработки мастера, остается добавить обработчики основных событий:
  • OnWizardFinished(System.EventArgs e) — событие инициируется при нажатии на кнопку Finish, и позволяет реализовать необходимые действия по завершению его работы (сохранить результаты работы, выполнить какие-то действия, и т.д.).

  • OnWizardCanceled(System.EventArgs e) — событие инициируется при нажатии на кнопку Cancel, и позволяет реализовать необходимые действия по аварийному прерыванию его работы (закрыть форму на которой расположен мастер).

  • OnSelectedIndexChanging(DocsVision.Platform.WinForms.Controls.WizardControl.SelectedIndexChangingEventArgs e) — событие инициируется до смены вкладки (при перемещении вперед или назад), и позволяет в случае необходимости воспрепятствовать этому переходу. Это может быть полезно для реализации проверки ввода всех необходимых параметров, прежде чем разрешить переход к следующему шагу.

  • OnSelectedIndexChanged(System.EventArgs e) — это событие возникает после перехода на новый шаг (вперед или назад), и позволяет выполнить какие-то действия по инициализации элементов управления на новом шаге.