在nextbutton的Postback事件中阻止导航到CreateUserWizardStep

时间:2010-05-04 05:40:28

标签: asp.net createuserwizard

我正在使用CreateUserWizard工具创建注册页面。这是第一次,我遇到以下问题:

我在页面中的WizardSteps中定义了两个步骤:

 <WizardSteps>
            <asp:WizardStep ID="CreateUserWizardStep0" runat="server" Title="Sign Up for your new Account !!">

    <asp:TextBox ID="Email" runat="server">

                                                                      

在第一个向导步骤中,用户提供电子邮件,我们需要检查此电子邮件是否符合某些条件(如果他们存在于我们的内部数据库中,国家/地区是美国等),并且他/她是否符合条件导航到CreateUserWizardStep1。

我在WizardStep0的开始导航模板中有一个StartNextButton。

<StartNavigationTemplate>
        <br />
        <asp:Button ID="StartNextButton" runat="server" CommandName="MoveNext" OnClick="StartNextButton_Click"
            Text="Check My Eligibility" />
    </StartNavigationTemplate>

我在回发后事件OnClick="StartNextButton_Click中执行检查资格的所有逻辑。如果他不符合条件,我应该在step0文本框中显示错误消息,并阻止导航到CreateUserWizardStep1。

我尝试了以下内容:

if(noteligible)
{
                    lblError1.Visible = true;
                    lblError1.Text = this.hfUserAlreadyRegistered.Value.ToString();
                    this.CreateUserWizard1.ActiveStepIndex = this.CreateUserWizard1.WizardSteps.IndexOf(this.CreateUserWizardStep0);
                    this.CreateUserWizard1.Controls.Remove(CreateUserWizardStep1);
                    this.CreateUserWizard1.ActiveStepIndex = 0;
                    break;

}

但这不起作用。我被带出了第0步,第1步即将到来。

如何在用户不符合条件时保留在Step0中并显示错误消息,并且只有在他有资格注册时才导航到Step1?

非常感谢。

1 个答案:

答案 0 :(得分:1)

尝试:

this.CreateUserWizard1.ActiveStepIndex = -1;