Library for easy creation of custom and Aero Wizards. Aero Wizard strictly follows Microsoft guidelines and uses Visual Styles to get visual theming.
The control can be downloaded from this site, via NuGet as
Windows Forms Aero-Wizard Control
, from the
Visual Studio Gallery
, or from within Visual Studio by adding a "New Item" to your Window Forms project, selecting Online, Templates, and searching for "Windows Forms Wizard Templates".
This project provides three main controls:
- WizardPageContainer - Allows for easy creation of a custom wizard. It manages page creation at design-time and navigation using user defined buttons.
- WizardControl - Builds on the container to provide the full Aero Wizard experience. The wizard visual format pulls from the current system theme. As a result, this wizard will correctly morph on each OS. Under XP, it will provide a old, pre-Aero,
look and feel. Under Vista, Win7 and Win8, it will take on the appearance defined by the OS.
- StepWizardControl - Extends WizardControl to include a step list that indicates current position through the flow.
The project is built on a number of great projects around the web on creating wizards for .NET using the old Wizard97 format. It also provides a good design-time experience so the developer can focus on the wizard function and not making it work.
Some other goodies in the source code area are:
Run-time Example - Windows 8
Run-time Example - Windows 7 / Vista
Run-time Example - Windows XP (Vista style)
Run-time Example - Windows XP (Wizard 97 style)
- Class that wraps DwmEnableBlurBehindWindow and DwmExtendFrameIntoClientArea capabilities exposed by the Desktop Window Manger (DWM) allow you to create the extended glass window effect. (Native\DWM.cs)
- Entension class for the VisualStyleRenderer class that includes a method to fix the broken GetMargins method and the ability to paint glowing text or paint theme backgrounds on glass. (Native\VisualStylesRendererExtender.cs)
- Controls for a label and button that paint correctly on glass. (ThemedLabel.cs & ThemeImageButton.cs)
- A fully evented generic list. (EventedList.cs)