Users expect modern applications to provide wizards to walk them through multistep processes. These UIs are distinguished by the use of magic. Sorry, just kidding.
Wizard controls provide the infrastructure to present the user with successive steps in a process, providing access to all the data collected in all the steps, with easy forward and backward navigation.
Similar to the
MultiView control, the
Wizard control contains a collection of
WizardStep objects. These
WizardStep objects derive from the
View class, as you can see in Figure 5-12, and the relationship between
WizardSteps and the
Wizard control is analogous to the relationship between the
Figure 5-12. View class hierarchy
As with the
MultiView control, all of the controls on all of the
WizardStep controls are part of the page’s control hierarchy and are accessible via code at runtime regardless of which specific
WizardStep is currently visible. Every time a user clicks on a navigation button or link, the page posts back to the server. It will not, however, post onward to another page, a process known as cross-page posting, which we’ll look at more in Chapter 6.
Wizard control takes care of all the plumbing required to implement navigation, both linear (going from one step to the next or back) and nonlinear (going from any step to any other step). It automatically creates the appropriate ...