如何在Asp.Net中处理CreateUserWizard步骤?

时间:2012-02-28 15:27:09

标签: c# asp.net sql-server

我在我的项目中使用了asp.net creatuserwizard。我的自定义模板看起来像这样

<WizardSteps>
    <asp:CreateUserWizardStep ID="CreateUserWizardStep0" runat="server">
        <ContentTemplate>
          //my custom code is here
        </ContentTemplate>
        <CustomNavigationTemplate>
        </CustomNavigationTemplate>
    </asp:CreateUserWizardStep>

现在,在Step2中,我有这样的代码;

 <asp:WizardStep ID="CreateUserWizardStep1" runat="server" AllowReturn="False"             StepType="Step">
        <div class="accountInfo">
            <fieldset class="register">
                   <p>
                        <asp:Label ID="CityLabel" runat="server" AssociatedControlID="City">City:</asp:Label>
                        <asp:TextBox ID="City" runat="server" CssClass="textEntry"></asp:TextBox>
                    </p>
                    <p>
                        <asp:Label ID="CountryLabel" runat="server" AssociatedControlID="Country">Country:</asp:Label>
                        <asp:TextBox ID="Country" runat="server" CssClass="textEntry"></asp:TextBox>
                    </p>

            </fieldset>
        </div>
    </asp:WizardStep>

所以,我的问题是,如何在我的用户配置文件中插入'City'文本框值,因为我在步骤2中单击了下一步。

2 个答案:

答案 0 :(得分:1)

您可以处理创建用户向导的NextButtonClick并检查currenttepindex:

    protected void YourCreateUserWizard_NextButtonClick(object sender, WizardNavigationEventArgs e)
    {
        if (e.CurrentStepIndex == YourStepIndex)
        {
            ...
        }
    }

答案 1 :(得分:0)

您需要添加代码来处理向导控件的CreatedUser事件。

此部分应该在后面的代码中,您可以访问向导的当前状态:

protected void CreateUserWizard_CreatedUser(object sender, EventArgs e)
{
  // Finde the value
  var cityField = (TextBox)CreateUserWizard.CreateUserWizardStep1.FindControl("City");

  // use the field value todo whatever you want    
}