С MSDN
Добавьте элемент <asp:WizardStep>
в секцию <WizardSteps>
элемента управления CreateUserWizard
.Включите все дополнительные элементы управления и разметку в дополнительный шаг мастера, который будет использовать настраиваемый элемент управления CreateUserWizard.
В следующем примере кода показан шаг, который необходимо добавить перед элементом CreateUserStep
элемента управления CreateUserWizard
, включающим элемент управления textbox.для пользователей, чтобы ввести имя пользователя.Имя пользователя будет проверено, чтобы убедиться, что оно еще не существует в базе данных членства.
<asp:WizardStep ID="CreateUserWizardStep0" runat="server">
<table border="0" style="font-size: 100%; font-family: Verdana" id="TABLE1" >
<tr>
<td align="center" colspan="2" style="font-weight: bold; color: white; background-color: #5d7b9d">
Select an Account Name</td>
</tr>
<tr>
<td>
<asp:Label ID="AccountNameLabel" runat="server" AssociatedControlID="SearchAccount" >
Account Name:</asp:Label>
<asp:TextBox ID="SearchAccount" runat="server"></asp:TextBox><br />
<asp:Label ID="SearchAccountMessage" runat="server" ForeColor="red" />
</td>
</tr>
</table>
</asp:WizardStep>
Добавьте код для шага мастера.Вы можете обработать событие NextButtonClick элемента управления Wizard, чтобы выполнить ваш код.Значение свойства CurrentStepIndex указывает, какой дополнительный шаг мастера вызвал событие NextButtonClick на порядковый номер шага (начиная с 0 для первого шага).
В следующем примере кода показан обработчик для события NextButtonClick
, которое принимаетимя пользователя, введенное в элемент управления TextBox на шаге мастера из предыдущего примера кода, и проверяет, что имя пользователя не пустое и в настоящее время не существует в базе данных членства.Вам потребуется добавить атрибут OnNextButtonClick в элемент управления CreateUserWizard на своей странице, который ссылается на обработчик для обработчика событий NextButtonClick (например, OnNextButtonClick="CreateUserWizard1_NextButtonClick"
.)
private bool UserExists(string username)
{
if (Membership.GetUser(username) != null) { return true; }
return false;
}
protected void CreateUserWizard1_NextButtonClick(object sender, WizardNavigationEventArgs e)
{
if (e.CurrentStepIndex == 0)
{
if (SearchAccount.Text.Trim() == "" || UserExists(SearchAccount.Text))
{
SearchAccountMessage.Text = "That account already exists. Please select an different account name.";
e.Cancel = true;
}
else
{
TextBox userName =
(TextBox)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("UserName");
userName.Text = SearchAccount.Text;
SearchAccountMessage.Text = "";
e.Cancel = false;
}
}
}