Sdílet prostřednictvím


Anpassen der Darstellung von ASP.NET-Anmeldesteuerelementen

Aktualisiert: November 2007

Sie können den Inhalt verschiedener ASP.NET-Anmeldesteuerelemente anpassen, indem Sie Steuerelementvorlagen angeben und der Benutzeroberfläche (UI) des Steuerelements eigene Steuerelemente hinzufügen oder optionale, für die UI des Steuerelements nicht benötigte Steuerelemente ersetzen oder entfernen.

Sie können auch die Formateigenschaften von Anmeldesteuerelementen oder Designs dazu verwenden, das Aussehen des Steuerelements anzupassen. Weitere Informationen finden Sie in den Abschnitten zu den Membern des jeweiligen Steuerelements und unter Übersicht über ASP.NET-Designs und ASP.NET-Skins.

Vom Benutzer anpassbare Anmeldesteuerelemente

Sie können den Inhalt jedes Anmeldesteuerelements anpassen, dessen vorhandene Benutzeroberfläche mithilfe einer Vorlage geändert werden kann. Dazu gehören das Login-Steuerelement, das PasswordRecovery-Steuerelement, das CreateUserWizard-Steuerelement und das ChangePassword-Steuerelement. In der folgenden Tabelle werden zu allen Steuerelementen die Vorlagen aufgelistet, die zur Anpassung verwendet werden können.

  • Login
    Verwenden Sie die LayoutTemplate-Vorlage, um andere Steuerelemente zum Erfassen des Benutzernamens und des Kennworts bei der Anmeldung anzugeben.

  • PasswordRecovery
    Verwenden Sie die UserNameTemplate-Vorlage, um andere Steuerelemente zum Erfassen des Benutzernamens anzugeben, für den das Kennwort wiederhergestellt werden soll.

    Verwenden Sie die QuestionTemplate-Vorlage, um andere Steuerelemente zum Erfassen der Kennwortfrage anzugeben, wenn die RequiresQuestionAndAnswer-Eigenschaft auf true festgelegt ist.

    Verwenden Sie die SuccessTemplate-Vorlage, um andere Steuerelemente anzugeben, die nach der erfolgreichen Wiederherstellung des Kennworts eines Benutzers angezeigt werden.

  • CreateUserWizard
    Verwenden Sie die ContentTemplate-Vorlage des CreateUserStep-Schritts, um andere Steuerelemente zum Erfassen des Benutzernamens, des Kennworts und weiterer Informationen anzugeben, die zum Erstellen eines neuen Benutzerkontos erforderlich sind.

    Verwenden Sie die ContentTemplate-Vorlage des CompleteStep-Schritts, um andere Steuerelemente anzugeben, die beim Abschluss der Erstellung eines neuen Benutzers angezeigt werden.

  • ChangePassword
    Verwenden Sie die ChangePasswordTemplate-Vorlage, um andere Steuerelemente zum Erfassen des Benutzernamens, des aktuellen und des neuen Kennworts für Benutzer anzuzeigen, die ihr Kennwort ändern möchten.

    Verwenden Sie die SuccessTemplate-Vorlage, um andere Steuerelemente anzugeben, die nach der erfolgreichen Änderung des Kennworts eines Benutzers angezeigt werden.

Angeben von Steuerelementen in Anmeldesteuerelementvorlagen

Sie können Anmeldesteuerelementen zusätzliche Steuerelemente und Befehlsschaltflächen hinzufügen sowie die standardmäßig enthaltenen Steuerelemente und Befehlsschaltflächen durch eigene Steuerelemente und Schaltflächen ersetzen.

Ersetzen von Befehlsschaltflächen in einer Anmeldesteuerelementvorlage

Sie können jedes Steuerelement in einer Anmeldesteuerelementvorlage als Befehlsschaltfläche verwenden. Damit das Anmeldesteuerelement den Befehl erkennt, ist es jedoch erforderlich, dass das Befehlssteuerelement ein Ereignis übergibt, das von der CommandEventArgs-Klasse abgeleitete Ereignisargumente enthält. Die Befehlsschaltfläche muss einen Wert für die CommandName-Eigenschaft der CommandEventArgs-Klasse festlegen, die den vom Anmeldesteuerelement auszuführenden Befehl beschreibt. In der folgenden Tabelle werden die gültigen Werte für die CommandName-Eigenschaft und die zugehörigen Anmeldesteuerelementvorlagen aufgelistet.

Ersetzen von Steuerelementen in einer Anmeldesteuerelementvorlage

Sie können die in verschiedenen ASP.NET-Anmeldesteuerelementen verwendeten Eingabe- und Anzeigesteuerelemente in den entsprechenden Vorlagen ändern. Jede Vorlage verfügt über Steuerelemente, die in der Vorlage sowie in optionalen Steuerelementen enthalten sein müssen. Erforderliche und optionale Steuerelemente werden mithilfe der ID-Eigenschaft des Steuerelements identifiziert. Wenn ein Steuerelement in einer Vorlage nicht enthalten ist, obwohl die ID-Eigenschaft auf einen erforderlichen Steuerelementbezeichner festgelegt ist, oder wenn dieses Steuerelement nicht die richtige Schnittstelle implementiert, löst das ASP.NET-Anmeldesteuerelement eine Ausnahme aus.

In der folgenden Tabelle werden die Vorlagen und die erforderlichen Steuerelemente anhand ihrer ID-Eigenschaft aufgelistet.

  • Login.LayoutTemplate
    UserName – Der Kontoname des anzumeldenden Benutzers. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    Password – Das Kennwort des anzumeldenden Benutzers. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    RememberMe - true, um das Authentifizierungstoken in einem dauerhaften Cookie zu speichern; false, um das Authentifizierungstoken in einem Sitzungscookie zu speichern. Dieses Steuerelement ist optional und muss die ICheckBoxControl-Schnittstelle implementieren.

    FailureText - Zeigt eine Fehlermeldung an, wenn die Anmeldung fehlgeschlagen ist. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

  • PasswordRecovery.UserNameTemplate
    UserName - Der Kontoname des Benutzers, dessen Kennwort wiederhergestellt werden soll. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    FailureText - Zeigt eine Fehlermeldung an, wenn die Wiederherstellung des Kennworts fehlgeschlagen ist. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

  • PasswordRecovery.QuestionTemplate
    UserName - Zeigt den Kontonamen des Benutzers an, dessen Kennwort wiederhergestellt wird. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

    Question - Die Kennwortfrage für den Benutzer, dessen Kennwort wiederhergestellt werden soll. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

    Answer - Die Kennwortantwort für den Benutzer, dessen Kennwort wiederhergestellt werden soll. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    FailureText - Zeigt eine Fehlermeldung an, wenn die Wiederherstellung des Kennworts fehlgeschlagen ist. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

  • CreateUserWizard.CreateUserStep, ContentTemplate
    UserName - Der Kontoname des Benutzerkontos, das erstellt werden soll. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    Password - Das Kennwort für das Benutzerkonto, das erstellt werden soll. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    ConfirmPassword - Ein Bestätigungswert, der mit dem Kennwort übereinstimmen muss. Dieses Steuerelement ist optional und muss die IEditableTextControl-Schnittstelle implementieren.

    Question - Die Kennwortfrage für den Benutzer, der erstellt werden soll. Dieses Steuerelement ist erforderlich, wenn die RequiresQuestionAndAnswer-Eigenschaft auf true festgelegt ist, und muss die IEditableTextControl-Schnittstelle implementieren.

    Answer - Die Kennwortantwort für den Benutzer, der erstellt werden soll. Dieses Steuerelement ist erforderlich, wenn die RequiresQuestionAndAnswer-Eigenschaft auf true festgelegt ist, und muss die IEditableTextControl-Schnittstelle implementieren.

    Email - Die E-Mail-Adresse für das Benutzerkonto, das erstellt werden soll. Dieses Steuerelement ist erforderlich, wenn die RequiresUniqueEmail-Eigenschaft auf true festgelegt ist, und muss die IEditableTextControl-Schnittstelle implementieren.

    ErrorMessage - Zeigt eine Fehlermeldung an, wenn das Erstellen des Benutzerkontos fehlgeschlagen ist. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

  • ChangePassword.ChangePasswordTemplate
    UserName - Der Kontoname des Benutzerkontos, das erstellt werden soll. Dieses Steuerelement ist erforderlich, wenn die DisplayUserName-Eigenschaft auf true festgelegt ist, und muss die IEditableTextControl-Schnittstelle implementieren.

    CurrentPassword - Das aktuelle Kennwort für das Benutzerkonto. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    NewPassword - Das neue Kennwort für das Benutzerkonto. Dieses Steuerelement ist erforderlich und muss die IEditableTextControl-Schnittstelle implementieren.

    ConfirmPassword - Ein Bestätigungswert, der mit dem neuen Kennwort übereinstimmen muss. Dieses Steuerelement ist optional und muss die IEditableTextControl-Schnittstelle implementieren.

    FailureText - Zeigt eine Fehlermeldung an, wenn das Erstellen des Benutzerkontos fehlgeschlagen ist. Dieses Steuerelement ist optional und muss die ITextControl-Schnittstelle implementieren.

Verweisen auf ein Steuerelement in einer Anmeldesteuerelementvorlage

Um auf ein Steuerelement in einer Anmeldesteuerelementvorlage zu verweisen, können Sie die FindControl-Methode des Containers für die Steuerelementvorlage aufrufen. In der folgenden Tabelle werden die Vorlagen und die ihnen zugeordneten Containereigenschaften aufgelistet.

Wenn Sie z. B. ein DropDownList-Steuerelement mit der ID TimeZoneList in die ContentTemplate-Vorlage des CreateUserStep-Schritts eines CreateUserWizard-Steuerelements einfügen möchten, können Sie auf das DropDownList-Steuerelement verweisen, indem Sie die FindControl-Methode des ContentTemplateContainer-Containers der CreateUserStep-Eigenschaft aufrufen, wie im folgenden Beispiel gezeigt.

Protected Sub CreateUserWizard1_CreatedUser(sender As Object, e As EventArgs)
  Dim timeZoneList As DropDownList = _
    CType(CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("TimeZoneList"), DropDownList)
End Sub
protected void CreateUserWizard1_CreatedUser(object sender, EventArgs e)
{
  DropDownList timeZoneList = 
    (DropDownList)CreateUserWizard1.CreateUserStep.ContentTemplateContainer.FindControl("TimeZoneList");
}

Siehe auch

Konzepte

Konfigurieren einer ASP.NET-Anwendung für die Verwendung der Mitgliedschaft

Referenz

Übersicht über ASP.NET-Anmeldungssteuerelemente