The Wizard Control

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 View and MultiView.

View class hierarchy

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.

The 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 ...

Get Programming ASP.NET 3.5, 4th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.