CreateUserWizard更改错误消息运行时

时间:2010-01-07 21:17:09

标签: c# .net asp.net asp.net-membership

首次使用ASP.NET CreateUserWizard控件,我们将用户名文本框别名为电子邮件地址,因为客户端希望用户名是电子邮件地址。然后隐藏它控制EmailAddress。这部分工作正常。我遇到的问题是UI上显示的错误消息显示“请输入其他用户名”。如果您输入现有的电子邮件地址。我们需要将其更改为“请输入其他电子邮件地址”。我为OnCreateUserError添加了一个事件处理程序。添加了下面的代码,并调试事件,并设置要显示的错误消息的Literal.Text。在稍后的事件中仍会被覆盖。有没有人知道我缺少什么来将这个错误消息发送到用户界面。

protected void userWizard_CreateUserError(object sender, CreateUserErrorEventArgs e)
{
    // check for dupe username error
    if (e.CreateUserError == MembershipCreateStatus.DuplicateUserName)
    {
        // If so change to dupe email error and set the literal
        e.CreateUserError = MembershipCreateStatus.DuplicateEmail;
        Literal errorMessage = (Literal)userWizard.WizardSteps[0].Controls[0].Controls[0].Controls[0].Controls[0].FindControl("ErrorMessage");
        errorMessage.Text = "Email address already exists. Please enter a different email address.";
    }
}

1 个答案:

答案 0 :(得分:2)

尝试设置CreateUserWizard的DuplicateUserNameErrorMessage Property