ChangePassword.DisplayUserName プロパティ
アセンブリ: System.Web (system.web.dll 内)

Dim instance As ChangePassword Dim value As Boolean value = instance.DisplayUserName instance.DisplayUserName = value
/** @property */ public boolean get_DisplayUserName () /** @property */ public void set_DisplayUserName (boolean value)
public function get DisplayUserName () : boolean public function set DisplayUserName (value : boolean)
ChangePassword コントロールで UserName を表示する必要がある場合は true。それ以外の場合は false。既定値は false です。

ユーザーのパスワードを変更するには、そのユーザーがメンバシップ プロバイダによって認証されている必要があります。ログオンしていないユーザーがパスワードを変更したり、別のユーザー アカウントでメンバシップ プロバイダによる認証を受け、そのアカウントのパスワードを変更したりできるようにするために、ChangePassword コントロールで TextBox コントロールを表示してユーザー名を受け付けることができます。
ログオンしていないユーザーに ChangePassword コントロールを表示する場合は、DisplayUserName プロパティを true に設定する必要があります。それ以外の場合は、ユーザーはユーザー名を指定できません。

DisplayUserName プロパティを設定して、Web サイトにログオンしていないユーザーに UserName コントロールを表示する方法を次のコード例に示します。
<%@ page language="VB"%> <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> <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="C#"%> <script runat="server"> void Page_Load(object sender, EventArgs e ) { if (Context.User.Identity.IsAuthenticated) { Changepassword1.DisplayUserName = false; } } </script> <html> <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>
ChangePassword コントロールを使用し、ChangingPassword という名前の ChangingPassword イベントのハンドラを含んだ ASP.NET ページを使用する方法を次のコード例に示します。ChangingPassword ハンドラのコードは、CurrentPassword プロパティに格納されている古いパスワードと NewPassword に格納されている新しいパスワードとを比較します。2 つのパスワードが同じ場合、パスワードの変更は失敗します。
ChangePassword コントロールでは、ユーザーが自分のユーザー名を入力できるように DisplayUserName プロパティが true に設定されます。つまり、ユーザーはログオンしてページを表示する必要がありません。
このコード例では、ASP.NET メンバシップとフォーム認証を使用するように構成された ASP.NET Web サイトと、名前とパスワードがわかっているユーザーが作成されていることを前提にしています。詳細については、「方法 : 簡単なフォーム認証を実装する」を参照してください。
<%@ 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 > <head runat="server"> <title>ChangePassword including a ChangingPassword event handler</title> </head> <body> <form id="form1" runat="server"> <div 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="C#" AutoEventWireup="True" %> <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 > <head runat="server"> <title>ChangePassword including a ChangingPassword event handler</title> </head> <body> <form id="form1" runat="server"> <div 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>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- ChangePassword.DisplayUserName プロパティのページへのリンク