Como: Personalizar o controle PasswordRecovery
Você pode personalizar o controle PasswordRecovery das seguintes maneiras:
Você pode editar os modelos exibidos e modificar as interfaces de usuário (IU) do controle.
Você pode aplicar um tema ASP.NET ao controle.Para obter mais informações, consulte Visão Geral de Temas e Aparências ASP.NET.
Você pode usar as propriedades do controle (tais como QuestionLabelText ou InstructionTextStyle) para modificar sua aparência.Para detalhes, consulte as propriedades do controle PasswordRecovery na referência da biblioteca da classe.
Este tópico descreve como personalizar o controle System.Web.UI.WebControls.PasswordRecovery usando modelos.
Para editar os modelos PasswordRecovery
Adicione um controle PasswordRecovery à página como mostrado no exemplo de código a seguir.
<asp:PasswordRecovery ID="PasswordRecovery1" Runat="server"> </asp:PasswordRecovery>
Você pode aplicar estilos para personalizar a aparência do controle PasswordRecovery.Utilize propriedades para aplicar um estilo desejado ao modelo, comoas propriedades LabelStyle, HyperLinkStyle, e TitleTextStyle.
Para personalizar o conteúdo do controle PasswordRecovery, continue com os próximos passos para modificar os modelos usados pelo controle PasswordRecovery.
Crie um modelo UserNameTemplate para especificar a marcação e os controles que aparecem quando o controle é renderizado primeiro, como exibido no exemplo de código seguinte.
Observação de segurança:
Este exemplo tem uma caixa de texto que aceita entrada do usuário, que é uma ameaça potencial de segurança.Por padrão, páginas Web ASP.NET validam se as entradas de usuário não incluem scripts ou elementos HTML.Para obter mais informações, consulte Visão Geral de Scripts Maliciosos.
<UserNameTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Forgot Your Password?</td> </tr> <tr> <td align="center" colspan="2"> Enter your User Name to receive your password.</td> </tr> <tr> <td align="right"> <asp:Label ID="UserNameLabel" AssociatedControlID="UserName">User Name:</asp:Label></td> <td> <asp:TextBox ID="UserName" ></asp:TextBox> <asp:RequiredFieldValidator ID="UserNameRequired" ControlToValidate="UserName" ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </UserNameTemplate>
<UserNameTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Forgot Your Password?</td> </tr> <tr> <td align="center" colspan="2"> Enter your User Name to receive your password.</td> </tr> <tr> <td align="right"> <asp:Label ID="UserNameLabel" AssociatedControlID="UserName">User Name:</asp:Label></td> <td> <asp:TextBox ID="UserName" ></asp:TextBox> <asp:RequiredFieldValidator ID="UserNameRequired" ControlToValidate="UserName" ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </UserNameTemplate>
Crie um modelo QuestionTemplate para especificar a marcação e controles que aparecerão quando o controle questiona o usuário pela pergunta de segurança, como mostra no exemplo de código a seguir.
Observação de segurança:
Este exemplo tem uma caixa de texto que aceita entrada do usuário, que é uma ameaça potencial de segurança.Por padrão, páginas Web ASP.NET validam se as entradas de usuário não incluem scripts ou elementos HTML.Para obter mais informações, consulte Visão Geral de Scripts Maliciosos.
<QuestionTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Identity Confirmation</td> </tr> <tr> <td align="center" colspan="2"> Answer the following question to receive your password.</td> </tr> <tr> <td align="right"> User Name:</td> <td> <asp:Literal ID="UserName" ></asp:Literal> </td> </tr> <tr> <td align="right"> Question:</td> <td> <asp:Literal ID="Question" ></asp:Literal> </td> </tr> <tr> <td align="right"> <asp:Label ID="AnswerLabel" AssociatedControlID="Answer">Answer:</asp:Label></td> <td> <asp:TextBox ID="Answer" ></asp:TextBox> <asp:RequiredFieldValidator ID="AnswerRequired" ControlToValidate="Answer" ErrorMessage="Answer is required." ToolTip="Answer is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </QuestionTemplate>
<QuestionTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Identity Confirmation</td> </tr> <tr> <td align="center" colspan="2"> Answer the following question to receive your password.</td> </tr> <tr> <td align="right"> User Name:</td> <td> <asp:Literal ID="UserName" ></asp:Literal> </td> </tr> <tr> <td align="right"> Question:</td> <td> <asp:Literal ID="Question" ></asp:Literal> </td> </tr> <tr> <td align="right"> <asp:Label ID="AnswerLabel" AssociatedControlID="Answer">Answer:</asp:Label></td> <td> <asp:TextBox ID="Answer" ></asp:TextBox> <asp:RequiredFieldValidator ID="AnswerRequired" ControlToValidate="Answer" ErrorMessage="Answer is required." ToolTip="Answer is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </QuestionTemplate>
Crie um modelo SuccessTemplate para especificar os marcadores e controles que aparecem quando um usuário obteve um password com sucesso
O exemplo de código a seguir mostra as marcações para um controle PasswordRecovery com um modelo SuccessTemplate definido.
Observação de segurança:
Este exemplo tem uma caixa de texto que aceita entrada do usuário, que é uma ameaça potencial de segurança.Por padrão, páginas Web ASP.NET validam se as entradas de usuário não incluem scripts ou elementos HTML.Para obter mais informações, consulte Visão Geral de Scripts Maliciosos.
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script > </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head > <meta http-equiv="Content-Type" content="text/html" /> <title>PasswordRecovery All Templates Sample</title> </head> <body> <form id="form1" > <div title="All Templates Sample"> <asp:PasswordRecovery ID="PasswordRecovery1" > <QuestionTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Identity Confirmation</td> </tr> <tr> <td align="center" colspan="2"> Answer the following question to receive your password.</td> </tr> <tr> <td align="right"> User Name:</td> <td> <asp:Literal ID="UserName" ></asp:Literal> </td> </tr> <tr> <td align="right"> Question:</td> <td> <asp:Literal ID="Question" ></asp:Literal> </td> </tr> <tr> <td align="right"> <asp:Label ID="AnswerLabel" AssociatedControlID="Answer">Answer:</asp:Label></td> <td> <asp:TextBox ID="Answer" ></asp:TextBox> <asp:RequiredFieldValidator ID="AnswerRequired" ControlToValidate="Answer" ErrorMessage="Answer is required." ToolTip="Answer is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </QuestionTemplate> <UserNameTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Forgot Your Password?</td> </tr> <tr> <td align="center" colspan="2"> Enter your User Name to receive your password.</td> </tr> <tr> <td align="right"> <asp:Label ID="UserNameLabel" AssociatedControlID="UserName">User Name:</asp:Label></td> <td> <asp:TextBox ID="UserName" ></asp:TextBox> <asp:RequiredFieldValidator ID="UserNameRequired" ControlToValidate="UserName" ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </UserNameTemplate> <SuccessTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td> Your password has been sent to you.</td> </tr> </table> </td> </tr> </table> </SuccessTemplate> </asp:PasswordRecovery> </div> </form> </body> </html>
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script > </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head > <title>Password Recovery All Templates Sample</title> </head> <body> <form id="form1" > <div title="All Templates Sample"> <asp:PasswordRecovery ID="PasswordRecovery1" > <QuestionTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Identity Confirmation</td> </tr> <tr> <td align="center" colspan="2"> Answer the following question to receive your password.</td> </tr> <tr> <td align="right"> User Name:</td> <td> <asp:Literal ID="UserName" ></asp:Literal> </td> </tr> <tr> <td align="right"> Question:</td> <td> <asp:Literal ID="Question" ></asp:Literal> </td> </tr> <tr> <td align="right"> <asp:Label ID="AnswerLabel" AssociatedControlID="Answer">Answer:</asp:Label></td> <td> <asp:TextBox ID="Answer" ></asp:TextBox> <asp:RequiredFieldValidator ID="AnswerRequired" ControlToValidate="Answer" ErrorMessage="Answer is required." ToolTip="Answer is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </QuestionTemplate> <UserNameTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td align="center" colspan="2"> Forgot Your Password?</td> </tr> <tr> <td align="center" colspan="2"> Enter your User Name to receive your password.</td> </tr> <tr> <td align="right"> <asp:Label ID="UserNameLabel" AssociatedControlID="UserName">User Name:</asp:Label></td> <td> <asp:TextBox ID="UserName" ></asp:TextBox> <asp:RequiredFieldValidator ID="UserNameRequired" ControlToValidate="UserName" ErrorMessage="User Name is required." ToolTip="User Name is required." ValidationGroup="PasswordRecovery1">*</asp:RequiredFieldValidator> </td> </tr> <tr> <td align="center" colspan="2" style="color: red"> <asp:Literal ID="FailureText" EnableViewState="False"></asp:Literal> </td> </tr> <tr> <td align="right" colspan="2"> <asp:Button ID="SubmitButton" CommandName="Submit" Text="Submit" ValidationGroup="PasswordRecovery1" /> </td> </tr> </table> </td> </tr> </table> </UserNameTemplate> <SuccessTemplate> <table border="0" cellpadding="1"> <tr> <td> <table border="0" cellpadding="0"> <tr> <td> Your password has been sent to you.</td> </tr> </table> </td> </tr> </table> </SuccessTemplate> </asp:PasswordRecovery> </div> </form> </body> </html>
Consulte também
Conceitos
Personalizando a Aparência dos Controles de Login do ASP.NET