Wizard.AllowNavigationToStep(Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
С помощью значения Boolean определяет,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.
Возвращаемое значение
false
, если переданный индекс ссылается на объект WizardStepBase, к которому уже получен доступ и для его свойства AllowReturn установлено значение false
; в противном случае — true
.
Примеры
В следующем примере кода показано, как создать производный класс с именем 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
.