ChangePassword.DisplayUserName Özellik

Tanım

Denetimin denetimi ve etiketi görüntüleyip görüntülemeyeceğini ChangePasswordUserName belirten bir değer alır veya ayarlar.

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

Özellik Değeri

trueDenetimin ChangePassword öğesini görüntülemesi UserNamegerekiyorsa ; aksi takdirde . false Varsayılan değer: false.

Örnekler

Aşağıdaki kod örneği, denetimi Web sitesinde oturum açmamış kullanıcılara görüntülemek UserName için özelliğinin nasıl ayarlandığını DisplayUserName gösterir.

<%@ 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>

Aşağıdaki kod örneği, denetim kullanan ve adlı ChangingPasswordolay için ChangingPassword bir işleyici içeren bir ChangePassword ASP.NET sayfasının nasıl kullanılacağını gösterir. İşleyicideki ChangingPassword kod özelliğinde depolanan eski parolayı içinde CurrentPasswordNewPassworddepolanan yeni parolayla karşılaştırır. İki parola aynıysa, parolayı değiştirmek başarısız olur.

Denetim, ChangePassword kullanıcının kendi kullanıcı adını girmesini sağlamak için özelliğini true olarak ayarlarDisplayUserName. Bu, kullanıcının sayfayı görüntülemek için oturum açması gerekmediği anlamına gelir.

Kod örneği, ASP.NET Web sitesinin ASP.NET üyeliği ve Forms kimlik doğrulamasını kullanacak şekilde yapılandırıldığını ve adı ve parolası sizin için bilinen bir kullanıcı oluşturulduğunu varsayar. Daha fazla bilgi için bkz . Nasıl yapılır: Basit Form Kimlik Doğrulaması Uygulama.

<%@ 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>

Açıklamalar

Parolalarını değiştirmek için, kullanıcıların üyelik sağlayıcısı tarafından kimliklerinin doğrulanması gerekir. Oturum açmamış kullanıcıların parolalarını değiştirmelerine veya üyelik sağlayıcısı tarafından farklı bir kullanıcı hesabıyla kimlik doğrulamasına izin vermek ve ardından bu hesabın parolasını değiştirmek için, ChangePassword denetim kullanıcı adını kabul etmek üzere bir TextBox denetim görüntüleyebilir.

Denetimin DisplayUserName oturum açmamış kullanıcılara görüntülenmesi durumunda ChangePassword özelliğini true olarak ayarlamanız gerekir; aksi takdirde kullanıcı bir kullanıcı adı belirtemez.

Şunlara uygulanır

Ayrıca bkz.