ChangePassword.DisplayUserName Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit une valeur qui indique si le contrôle ChangePassword doit afficher l'étiquette et le contrôle UserName.
public:
virtual property bool DisplayUserName { bool get(); void set(bool value); };
public virtual bool DisplayUserName { get; set; }
member this.DisplayUserName : bool with get, set
Public Overridable Property DisplayUserName As Boolean
Valeur de propriété
true
si le contrôle ChangePassword doit afficher UserName ; sinon, false
. La valeur par défaut est false
.
Exemples
L’exemple de code suivant montre comment définir la DisplayUserName propriété pour afficher le UserName contrôle aux utilisateurs qui ne sont pas connectés au site Web.
<%@ page language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(object sender, EventArgs e )
{
if (Context.User.Identity.IsAuthenticated)
{
Changepassword1.DisplayUserName = false;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ChangePassword.DisplayUserName sample.</title>
</head>
<body>
<form id="form1" runat="server">
<div>
User's login status: <asp:loginstatus id="status" runat="server" /><br />
<asp:changepassword id="Changepassword1" runat="server" displayusername="true" />
</div>
</form>
</body>
</html>
<%@ page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
If Context.User.Identity.IsAuthenticated Then
changepassword1.DisplayUserName = False
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ChangePassword.DisplayUserName sample.</title>
</head>
<body>
<form id="form1" runat="server">
<div>
User's login status: <asp:loginstatus id="status" runat="server" /><br />
<asp:changepassword id="Changepassword1" runat="server" displayusername="true" />
</div>
</form>
</body>
</html>
L’exemple de code suivant montre comment utiliser une page ASP.NET qui utilise un ChangePassword contrôle et inclut un gestionnaire pour l’événement ChangingPassword nommé ChangingPassword
. Le code dans le ChangingPassword
gestionnaire compare l’ancien mot de passe stocké dans la CurrentPassword propriété au nouveau mot de passe stocké dans NewPassword. Si les deux mots de passe sont identiques, la modification du mot de passe échoue.
Le ChangePassword contrôle définit la DisplayUserName propriété sur true
pour permettre à l’utilisateur d’entrer son nom d’utilisateur. Cela signifie que l’utilisateur n’a pas besoin de se connecter pour afficher la page.
L’exemple de code suppose que le site web ASP.NET a été configuré pour utiliser ASP.NET’appartenance et l’authentification par formulaire, et qu’un utilisateur a été créé dont vous connaissez le nom et le mot de passe. Pour plus d’informations, consultez Guide pratique pour implémenter l’authentification par formulaire simple.
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
//Manually register the event-handling methods.
ChangePassword1.ChangingPassword += new LoginCancelEventHandler(this._ChangingPassword);
}
void _ChangingPassword(Object sender, LoginCancelEventArgs e)
{
if (ChangePassword1.CurrentPassword.ToString() == ChangePassword1.NewPassword.ToString())
{
Message1.Visible = true;
Message1.Text = "Old password and new password must be different. Please try again.";
e.Cancel = true;
}
else
{
//This line prevents the error showing up after a first failed attempt.
Message1.Visible = false;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ChangePassword including a ChangingPassword event handler</title>
</head>
<body>
<form id="form1" runat="server">
<div style="text-align:center">
<h1>ChangePassword</h1>
<asp:LoginView ID="LoginView1" Runat="server"
Visible="true">
<LoggedInTemplate>
<asp:LoginName ID="LoginName1" Runat="server" FormatString="You are logged in as {0}." />
<br />
</LoggedInTemplate>
<AnonymousTemplate>
You are not logged in
</AnonymousTemplate>
</asp:LoginView><br />
<asp:ChangePassword ID="ChangePassword1" Runat="server"
BorderStyle="Solid"
BorderWidth="1"
CancelDestinationPageUrl="~/Default.aspx"
DisplayUserName="true"
OnChangingPassword="_ChangingPassword"
ContinueDestinationPageUrl="~/Default.aspx" >
</asp:ChangePassword><br />
<asp:Label ID="Message1" Runat="server" ForeColor="Red" /><br />
<asp:HyperLink ID="HyperLink1" Runat="server"
NavigateUrl="~/Default.aspx">
Home
</asp:HyperLink>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Public Sub PageLoad(ByVal Sender As Object, ByVal e As EventArgs)
'Manually register the event-handling methods.
AddHandler ChangePassword1.ChangingPassword, AddressOf Me._ChangingPassword
End Sub
Public Sub _ChangingPassword(ByVal Sender As Object, ByVal e As LoginCancelEventArgs)
If (ChangePassword1.CurrentPassword.ToString() = ChangePassword1.NewPassword.ToString) Then
Message1.Visible = True
Message1.Text = "Old password and new password must be different. Please try again."
e.Cancel = True
Else
'This line prevents the error showing up after a first failed attempt.
Message1.Visible = False
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ChangePassword including a ChangingPassword event handler</title>
</head>
<body>
<form id="form1" runat="server">
<div style="text-align:center">
<h1>ChangePassword</h1>
<asp:LoginView ID="LoginView1" Runat="server"
Visible="true">
<LoggedInTemplate>
<asp:LoginName ID="LoginName1" Runat="server" FormatString="You are logged in as {0}." />
<br />
</LoggedInTemplate>
<AnonymousTemplate>
You are not logged in
</AnonymousTemplate>
</asp:LoginView><br />
<asp:ChangePassword ID="ChangePassword1" Runat="server"
BorderStyle="Solid"
BorderWidth="1"
CancelDestinationPageUrl="~/Default.aspx"
DisplayUserName="true"
OnChangingPassword="_ChangingPassword"
ContinueDestinationPageUrl="~/Default.aspx" >
</asp:ChangePassword><br />
<asp:Label ID="Message1" Runat="server" ForeColor="Red" /><br />
<asp:HyperLink ID="HyperLink1" Runat="server"
NavigateUrl="~/Default.aspx">
Home
</asp:HyperLink>
</div>
</form>
</body>
</html>
Remarques
Pour modifier leur mot de passe, les utilisateurs doivent être authentifiés par le fournisseur d’appartenance. Pour permettre aux utilisateurs qui ne sont pas connectés de modifier leur mot de passe ou d’être authentifiés par le fournisseur d’appartenance avec un autre compte d’utilisateur, puis de modifier le mot de passe de ce compte, le ChangePassword contrôle peut afficher un TextBox contrôle pour accepter le nom d’utilisateur.
Vous devez définir la DisplayUserName propriété true
sur si le ChangePassword contrôle sera affiché pour les utilisateurs qui ne sont pas connectés ; sinon, l’utilisateur ne sera pas en mesure de spécifier un nom d’utilisateur.
S’applique à
Voir aussi
- vue d’ensemble des contrôles de connexion ASP.NET
- Personnalisation de l’apparence et du comportement des contrôles de connexion ASP.NET
- modèles de contrôles de serveur web ASP.NET
- Guide pratique pour afficher différentes informations aux utilisateurs anonymes et connectés
- Onglet Sécurité de l’outil d’administration de site web
- Sécurisation des contrôles de connexion
- Pratiques de base relatives à la sécurité des applications Web
- Sécurisation de l’appartenance