Я все еще изучаю WPF и работаю над проектом WinForm, так что извините за любые ссылки WinForm в этом.
Элемент управления мастера может содержать ссылку на каждый пользовательский элемент управления, который будет отображаться мастером.Мастер добавит все эти элементы управления к себе controls.add(_userControl1)
.Каждому элементу управления присвоено значение false.
Мастер также может содержать закрытый enum
со списком имен элементов управления, т. Е.
private enum CurrentControl
{
_MyControl1,
_MyControl2,
_MyControl3
}
Элемент управления мастера сохраняет ссылку натекущий отображаемый элемент управления CurrentControl _currentControl = CurrentControl._MyControl1;
Имеет метод UpdateDisplay (), который на основе _currentControl сделает видимым только этот один элемент управления.
Затем, когда вы нажимаете кнопки «Предыдущая / Следующая», он обновляет переменную _currentControl на основе своейтекущее значение вызывает UpdateDisplay () для отображения элемента управления enext.
Таким образом, у вас есть ссылка на все ваши пользовательские элементы управления (и, следовательно, на данные, которые они содержат), и, таким образом, вы можете проверить содержимое, и ваш мастер сможетпереходите назад и вперед через них с помощью кнопок мастера, а логика в мастере показывает и скрывает элементы управления.