WizardStepBase.AllowReturn 属性

定义

获取或设置一个值,该值指示是否允许用户从 WizardStepCollection 集合中后面的步骤返回当前步骤。

public:
 virtual property bool AllowReturn { bool get(); void set(bool value); };
[System.Web.UI.Themeable(false)]
public virtual bool AllowReturn { get; set; }
[<System.Web.UI.Themeable(false)>]
member this.AllowReturn : bool with get, set
Public Overridable Property AllowReturn As Boolean

属性值

如果允许用户返回当前步骤,则为 true;否则为 false。 默认值是 true

属性

示例

下面的示例演示如何使用 AllowReturn 属性阻止用户在访问控件中的步骤后返回该步骤 Wizard 。 在示例中, Step1 步骤的 AllowReturn 属性设置为 false。 用户离开步骤 Step1 后,步骤上 Step2 不显示“上一步”按钮。

<%@ 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">

</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"
    displaysidebar="false" >
        <WizardSteps>
          <asp:WizardStep id="WizardStep1" 
            title="Step 1" 
            allowreturn="false"
            runat="server">
            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" 
            title="Step 3" 
            runat="server">
            You are currently on Step 3.
          </asp:WizardStep>
        </WizardSteps>
        <HeaderTemplate>
          <b>WizardStepBase AllowReturn Example</b>
        </HeaderTemplate>
      </asp:Wizard>
    </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">

</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"
    displaysidebar="false" >
        <WizardSteps>
          <asp:WizardStep id="WizardStep1" 
            title="Step 1" 
            allowreturn="false"
            runat="server">
            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" 
            title="Step 3" 
            runat="server">
            You are currently on Step 3.
          </asp:WizardStep>
        </WizardSteps>
        <HeaderTemplate>
          <b>WizardStepBase AllowReturn Example</b>
        </HeaderTemplate>
      </asp:Wizard>
    </form>
  </body>
</html>

注解

属性 AllowReturn 可用于在 控件中 Wizard 强制实施线性导航。 如果每个步骤的 AllowReturn 属性都设置为 false,则用户在访问步骤后将无法返回到该步骤。 可以使用此功能的一种方案是禁止用户在完成某个步骤后返回到某个步骤,因为你在完成每个步骤时将数据保存到数据库。 如果在每个步骤后保存数据,并允许用户返回到某个步骤并在保存后更改信息,则保存的数据可能会损坏。 通过将 属性设置为 AllowReturnfalse,一旦用户离开步骤,他们将无法返回到该步骤并更改任何值。

属性 AllowReturn 确定如何以及何时不呈现 “上一个 ”按钮。 下表描述了“ 上一个 ”按钮呈现行为。

方案 行为
线性:步骤 1 已 AllowReturn 设置为 false ,用户操作转到步骤 2。 步骤 2 不显示“ 上一步 ”按钮。
非线性:步骤 1 已 AllowReturn 设置为 false ,用户操作转到步骤 3。 步骤 3 不显示“ 上一步 ”按钮。
边栏按钮:步骤 2 已 AllowReturn 设置为 falseDisplaySideBar 设置为 true,用户单击边栏按钮。 设置为 时AllowReturnfalse,边栏上不会自动禁用任何按钮。 如果用户单击该按钮,则忽略该操作。
带自定义模板的线性 & 非线性:该步骤具有自定义导航模板。 如果使用模板进行导航,如果将 AllowReturn 设置为 false ,则不会自动隐藏或显示。 模板上的 “上一个 ”按钮应该是可选的。
使用 Visual Studio 设计器和 ActiveStepIndex :控件有 5 个步骤,你正在执行步骤 4,然后运行页面。 当步骤 4 为 ActiveStepIndex时,将呈现“ 上一步 ”按钮。 仅当历史记录中的上一步设置为 AllowReturn 时,“上一步”按钮才隐藏StepTypeStepfalse。 由于首先呈现步骤 4,并且历史记录中没有步骤,因此不会隐藏 “上一步 ”按钮。
启动步骤和非线性导航:用户访问步骤 3 和步骤 4,然后访问设置为 StepTypeStart的步骤 1。 将 设置为 StartStepType,向导不会添加“上一步”按钮,无论用户如何导航到该步骤。
历史记录中的同一步:用户访问步骤 3,其中 StepType 设置为 Step ,并且用户不提交其操作。 然后,单击步骤 3 中的上一个按钮。 向导控件检查历史记录中的 上一 步是否是用户当前所在的“相同”步骤。 如果步骤相同,向导控件将回溯历史记录以确定前面的“不同”步骤,并根据历史记录中的“不同步骤”显示 上一个 按钮和目标。

注意

如果 属性 AllowReturn 设置为 false,但 DisplaySideBar 的父控件 WizardStepBase 的 属性设置为 true,则单击边栏区域中的按钮不起作用。 通常显示边栏区域以提供非线性导航,因此,如果不使用非线性导航的功能,则可能需要将 属性设置为 DisplaySideBarfalse

无法通过主题或样式表主题设置此属性。 有关详细信息,请参阅 ThemeableAttributeASP.NET 主题和皮肤

适用于

另请参阅