Partager via


Personnalisation de l'apparence des contrôles de connexion ASP.NET

Mise à jour : novembre 2007

Vous pouvez personnaliser le contenu de plusieurs contrôles d'ouverture de session ASP.NET en spécifiant les modèles de contrôle et en ajoutant vos propres contrôles à l'interface utilisateur du contrôle, ou en remplaçant (ou en supprimant) les contrôles facultatifs de l'interface utilisateur du contrôle.

Vous pouvez aussi utiliser les propriétés de style des contrôles d'ouverture de session aussi bien que les thèmes et les apparences pour personnaliser l'apparence du contrôle. Pour plus d'informations, reportez-vous aux membres du contrôle spécifique et Vue d'ensemble des thèmes et des apparences ASP.NET.

Contrôles d'ouverture de session personnalisables

Vous pouvez personnaliser le contenu de tout contrôle d'ouverture de session où l'interface utilisateur du contrôle existant peut être remplacée par un modèle. Cela inclut les contrôles Login, PasswordRecovery, CreateUserWizard et ChangePassword. Le tableau suivant répertorie les modèles qui sont disponibles pour être personnalisés avec chaque contrôle.

  • Login
    Utilisez le modèle LayoutTemplate pour spécifier différents contrôles et récupérer le nom d'utilisateur et le mot de passe de connexion.

  • PasswordRecovery
    Utilisez le modèle UserNameTemplate pour spécifier différents contrôles et extraire le nom d'utilisateur pour lequel le mot de passe doit être récupéré.

    Utilisez le modèle QuestionTemplate pour spécifier différents contrôles et récupérer la question du mot de passe si la propriété RequiresQuestionAndAnswer a la valeur true.

    Utilisez le modèle SuccessTemplate pour spécifier les différents contrôles à afficher lorsque le mot de passe d'un utilisateur a été récupéré avec succès.

  • CreateUserWizard
    Utilisez le modèle ContentTemplate de l'étape CreateUserStep pour spécifier différents contrôles et récupérer le nom d'utilisateur, le mot de passe et les autres informations nécessaires à la création d'un nouveau compte d'utilisateur.

    Utilisez le modèle ContentTemplate de l'étape CompleteStep pour spécifier les différents contrôles à afficher lorsque l'opération de création de l'utilisateur est terminée.

  • ChangePassword
    Utilisez le modèle ChangePasswordTemplate pour spécifier différents contrôles et récupérer le nom d'utilisateur, le mot de passe actuel et le nouveau mot de passe de l'utilisateur qui modifie son mot de passe.

    Utilisez le modèle SuccessTemplate pour spécifier les différents contrôles à afficher lorsque le mot de passe d'un utilisateur a été modifié avec succès.

Spécification de contrôles dans les modèles de contrôles de connexion

Vous pouvez inclure des contrôles et des boutons de commande supplémentaires dans les modèles de contrôles de connexion, ainsi que remplacer les contrôles et les boutons de commande par défaut par ceux de votre choix.

Remplacement de boutons de commande dans un modèle de contrôle de connexion

Vous pouvez utiliser aussi bien un contrôle qu'un bouton de commande dans un modèle de contrôle de connexion. Cependant, pour que le contrôle de connexion reconnaisse la commande, le contrôle de commande doit propager un événement incluant des arguments d'événement qui héritent de la classe CommandEventArgs. Le bouton de commande doit spécifier une valeur pour la propriété CommandName de la classe CommandEventArgs qui identifie la commande qui sera exécutée par le contrôle de connexion. Le tableau suivant répertorie les valeurs valides pour la propriété CommandName et leurs modèles de contrôle de connexion associés.

Remplacement de contrôles dans un modèle de contrôle de connexion

Vous pouvez remplacer les contrôles d'entrée et d'affichage utilisés par plusieurs contrôles de connexion ASP.NET dans leurs modèles respectifs. Chaque modèle possède des contrôles qui doivent être inclus dans le modèle, aussi bien que des contrôles facultatifs. Les contrôles obligatoires et facultatifs sont identifiés à l'aide de la propriété ID du contrôle. Si un modèle n'inclut pas de contrôle où la propriété ID a la valeur un identificateur de contrôle requis, ou si ce contrôle n'implémente pas l'interface appropriée, le contrôle de connexion ASP.NET lève une exception.

Le tableau suivant répertorie les modèles et les contrôles requis par leurs propriétés ID.

  • Login.LayoutTemplate
    UserName - Nom du compte d'utilisateur à connecter. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    Password - Mot de passe de l'utilisateur à connecter. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    RememberMe - true pour stocker le jeton d'authentification dans un cookie persistant ; false pour stocker le jeton d'authentification dans un cookie de session. Ce contrôle est facultatif et doit implémenter l'interface ICheckBoxControl.

    FailureText - Affiche un message sur l'échec de la connexion. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

  • PasswordRecovery.UserNameTemplate
    UserName - Nom du compte d'utilisateur pour lequel récupérer le mot de passe. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    FailureText - Affiche un message sur l'échec de la récupération du mot de passe. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

  • PasswordRecovery.QuestionTemplate
    UserName - Affiche le nom du compte d'utilisateur pour lequel le mot de passe est en cours de récupération. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

    Question - Question relative au mot de passe de l'utilisateur pour lequel le mot de passe est en cours de récupération. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

    Answer - Réponse relative au mot de passe de l'utilisateur pour lequel le mot de passe est en cours de récupération. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    FailureText - Affiche un message sur l'échec de la récupération du mot de passe. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

  • CreateUserWizard.CreateUserStep, ContentTemplate
    UserName - Nom du compte d'utilisateur à créer. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    Password - Mot de passe du compte d'utilisateur à créer. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    ConfirmPassword - Valeur de confirmation devant correspondre au mot de passe. Ce contrôle est facultatif et doit implémenter l'interface IEditableTextControl.

    Question - Question relative au mot de passe de l'utilisateur à créer. Ce contrôle est obligatoire si la propriété RequiresQuestionAndAnswer a la valeur true et doit implémenter l'interface IEditableTextControl.

    Answer - Réponse relative au mot de passe de l'utilisateur à créer. Ce contrôle est obligatoire si la propriété RequiresQuestionAndAnswer a la valeur true et doit implémenter l'interface IEditableTextControl.

    Email - Adresse de messagerie du compte d'utilisateur à créer. Ce contrôle est obligatoire si la propriété RequiresUniqueEmail a la valeur true et doit implémenter l'interface IEditableTextControl.

    ErrorMessage - Affiche un message d'échec de la création du compte d'utilisateur. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

  • ChangePassword.ChangePasswordTemplate
    UserName - Nom du compte d'utilisateur à créer. Ce contrôle est obligatoire si la propriété DisplayUserName a la valeur true et doit implémenter l'interface IEditableTextControl.

    CurrentPassword - Mot de passe actuel du compte d'utilisateur. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    NewPassword - Nouveau mot de passe du compte d'utilisateur. Ce contrôle est obligatoire et doit implémenter l'interface IEditableTextControl.

    ConfirmPassword - Valeur de confirmation devant correspondre au nouveau mot de passe. Ce contrôle est facultatif et doit implémenter l'interface IEditableTextControl.

    FailureText - Affiche un message d'échec de la création du compte d'utilisateur. Ce contrôle est facultatif et doit implémenter l'interface ITextControl.

Référence à un contrôle dans un modèle de contrôle de connexion

Pour référencer un contrôle dans un modèle de contrôle de connexion, vous pouvez appeler la méthode FindControl du conteneur pour le modèle de contrôle. Le tableau suivant répertorie les modèles et leurs propriétés de conteneur associées.

Par exemple, si vous devez inclure un contrôle DropDownList avec un ID TimeZoneList dans le modèle ContentTemplate de l'étape CreateUserStep d'un contrôle CreateUserWizard, vous pouvez référencer le contrôle DropDownList en appelant la méthode FindControl du conteneur ContentTemplateContainer de la propriété CreateUserStep, comme illustré dans l'exemple suivant.

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");
}

Voir aussi

Concepts

Configuration d'une application ASP.NET pour utiliser l'appartenance (membership)

Référence

Vue d'ensemble des contrôles de connexion ASP.NET