Wizard.AllowNavigationToStep(Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Использует логическое значение, чтобы определить, может ли ActiveStep свойство быть задано WizardStepBase объекту, соответствующему индексу, который передается.
protected:
virtual bool AllowNavigationToStep(int index);
protected virtual bool AllowNavigationToStep(int index);
abstract member AllowNavigationToStep : int -> bool
override this.AllowNavigationToStep : int -> bool
Protected Overridable Function AllowNavigationToStep (index As Integer) As Boolean
Параметры
- index
- Int32
Индекс проверяемого WizardStepBase объекта.
Возвращаемое значение
Примеры
В следующем примере кода показано, как создать производный класс с именем CustomWizard и переопределить OnSideBarButtonClick метод. При нажатии кнопки на боковой панели CustomWizard элемента управления вызывается метод, чтобы определить, AllowNavigationToStep можно ли получить доступ к выбранному шагу. Затем сообщение записывается на содержащую веб-страницу, информируя пользователя о том, что произошло.
<%@ page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
// This custom wizard control defines the OnSideBarButtonClick method
// that uses the AllowNavigationToStep method to determine whether the
// value passed in can be used to set the ActiveStepIndex property.
class CustomWizard : Wizard
{
override protected void OnSideBarButtonClick(WizardNavigationEventArgs e)
{
base.OnSideBarButtonClick(e);
if (AllowNavigationToStep(e.NextStepIndex))
{
this.Page.Response.Write("AllowNavigationToStep() returned true, moving to Step"
+ (e.NextStepIndex + 1).ToString() + ".");
this.ActiveStepIndex = e.NextStepIndex;
}
else
{
this.Page.Response.Write("AllowNavigationToStep() returned false for Step"
+ (e.NextStepIndex + 1).ToString() + ", moving to Step2.");
this.ActiveStepIndex = 1;
}
}
}
// Add the custom wizard control to the page.
void Page_Load(object sender, EventArgs e)
{
CustomWizard WizardControl = new CustomWizard();
WizardControl.ID = "WizardControl";
// Create some steps for the custom wizard.
for (int i = 0; i <= 5; i++)
{
WizardStep newStep = new WizardStep();
newStep.ID = "Step" + (i + 1).ToString();
// Set AllowReturn to false for some of the steps.
if ((i % 2) == 0)
{
newStep.AllowReturn = false;
}
// Add each step to the custom wizard.
WizardControl.WizardSteps.Add(newStep);
}
// Display the wizard on the page.
PlaceHolder1.Controls.Add(WizardControl);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>AllowNavigationToStep Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>AllowNavigationToStep Example</h3>
<asp:PlaceHolder id="PlaceHolder1"
runat="server" />
</form>
</body>
</html>
<%@ 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">
' This custom wizard control defines the OnSideBarButtonClick method
' that uses the AllowNavigationToStep method to determine whether the
' value passed in can be used to set the ActiveStepIndex property.
Class CustomWizard
Inherits Wizard
Protected Overloads Sub OnSideBarButtonClick(ByVal sender As Object, _
ByVal e As WizardNavigationEventArgs) Handles Me.SideBarButtonClick
If AllowNavigationToStep(e.NextStepIndex) Then
Me.Page.Response.Write("AllowNavigationToStep() returned true, moving to Step" & _
(e.NextStepIndex + 1).ToString() & ".")
Me.ActiveStepIndex = e.NextStepIndex
Else
Me.Page.Response.Write("AllowNavigationToStep() returned false for Step" & _
(e.NextStepIndex + 1).ToString() & ", moving to Step2.")
Me.ActiveStepIndex = 1
End If
End Sub
End Class
' Add the custom wizard control to the page.
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
Dim WizardControl As New CustomWizard()
WizardControl.ID = "WizardControl"
' Create some steps for the custom wizard.
For i As Integer = 0 To 5
Dim newStep As New WizardStep()
newStep.ID = "Step" & (i + 1).ToString()
' Set AllowReturn to false for some of the steps.
If ((i Mod 2) = 0) Then
newStep.AllowReturn = False
End If
' Add each step to the custom wizard.
WizardControl.WizardSteps.Add(newStep)
Next
' Display the wizard on the page.
PlaceHolder1.Controls.Add(WizardControl)
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>AllowNavigationToStep Example</title>
</head>
<body>
<form id="Form1" runat="server">
<h3>AllowNavigationToStep Example</h3>
<asp:PlaceHolder id="PlaceHolder1"
runat="server" />
</form>
</body>
</html>
Комментарии
Доступ AllowNavigationToStep к методу можно получить только из производного класса из-за его protected модификатора. В производном классе можно использовать AllowNavigationToStep метод, чтобы определить, можно ли использовать индекс, передаваемый для задания ActiveStepIndex свойства. Метод AllowNavigationToStep возвращает false , если индекс, переданный в ссылке на WizardStepBase объект, к которому уже был доступ, и имеет его AllowReturn свойство, равное false; в противном случае он вернет true.