Working with Master PagesAuthoring Rich Pages in ASP.NET 1.xWhat’s Good About User ControlsWhat’s Bad About User ControlsVisual InheritanceWriting a Master PageWhat’s a Master Page, Anyway?The @Master DirectiveThe ContentPlaceHolder Container ControlSpecifying Default ContentWriting a Content PageThe Content ControlAttaching Pages to a MasterDevice-Specific MastersSetting the Title of a PageProcessing Master and Content PagesCompiling Master PagesServing the Page to UsersNested Master PagesProgramming the Master PageExposing Master PropertiesInvoking Properties on the MasterThe @MasterType DirectiveChanging the Master Page DynamicallyWorking with ThemesUnderstanding ASP.NET ThemesWhat’s a Theme, Anyway?Structure of a ThemeCustomization Themes vs. Style Sheet ThemesTheming Pages and ControlsEnabling Themes on a PageApplying SkinsTaking Control of ThemingTheming ControlsPutting Themes to WorkCSS vs. ThemesCreating a ThemeLoading Themes DynamicallyWorking with WizardsAn Overview of the Wizard ControlStructure of a WizardWizard Styles and TemplatesThe Wizard’s Programming InterfaceAdding Steps to a WizardTypes of Wizard StepsCreating an Input StepDefining the SidebarNavigating Through the WizardFiltering Page Navigation with EventsCanceling EventsFinalizing the WizardConclusion