Wizard.ActiveStepIndex Property
Gets or sets the index of the current WizardStepBase object.
Assembly: System.Web (in System.Web.dll)
Property Value
Type: System.Int32The index of the WizardStepBase that is currently displayed in the Wizard control.
| Exception | Condition |
|---|---|
| ArgumentOutOfRangeException | The selected value is higher than the number of wizard steps defined in the WizardSteps collection. |
The ActiveStepIndex property provides the zero-based index of the WizardStepBase object that is currently displayed in the Wizard control. You can programmatically set the ActiveStepIndex property to control which step is displayed to the user at run time.
Note |
|---|
If you are using Microsoft Visual Studio 2005, note that the ActiveStepIndex is persisted in Source view. If you change the WizardSteps property in Design view by clicking the sidebar buttons, and you then run the page, the first step of the Wizard control might not be shown because the ActiveStepIndex might be pointing to a different step. |
If you set the value of ActiveStepIndex to -1 to support a wizard with no steps by default, the following behavior occurs:
If you declaratively set ActiveStepIndex to -1 or set it to -1 as a default value, the control will always try to render the first step in the wizard.
If you programmatically set ActiveStepIndex to -1, the control will not render.
This property cannot be set by themes or style sheet themes. For more information, see ThemeableAttribute and ASP.NET Themes and Skins.
The following code example demonstrates how to use the ActiveStepIndex property to set the ActiveStep property of the Wizard control. If the value of CheckBox1.Checked is true, the ActiveStep property is set to Wizard1.Step3; otherwise, the ActiveStep property is set to Wizard1.Step2.
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Sub OnActiveStepChanged(ByVal sender As Object, ByVal e As EventArgs) ' If the ActiveStep is changing to Step2, check to see whether the ' CheckBox1 CheckBox is selected. If it is, skip to the Step3 step. If (Wizard1.ActiveStepIndex = Wizard1.WizardSteps.IndexOf(Me.WizardStep2)) Then If (Me.CheckBox1.Checked) Then Wizard1.ActiveStepIndex = Wizard1.WizardSteps.IndexOf(Me.WizardStep3) End If End If End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>ASP.NET Example</title> </head> <body> <form id="form1" runat="server"> <asp:Wizard id="Wizard1" runat="server" OnActiveStepChanged="OnActiveStepChanged"> <WizardSteps> <asp:WizardStep id="WizardStep1" title="Step 1" runat="server"> <asp:CheckBox id="CheckBox1" runat="Server" text="Select this check box to skip Step 2." /> You are currently on Step 1. </asp:WizardStep> <asp:WizardStep id="WizardStep2" title="Step 2" runat="server"> You are currently on Step 2. </asp:WizardStep> <asp:WizardStep id="WizardStep3" runat="server" title="Step 3"> You are currently on Step 3. </asp:WizardStep> </WizardSteps> <HeaderTemplate> <b>ActiveStepIndex Example</b> </HeaderTemplate> </asp:Wizard> </form> </body> </html>
Available since 2.0
