CustomValidator.AddAttributesToRender(HtmlTextWriter) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Agrega las propiedades del CustomValidator control al flujo de salida para la representación en el cliente.
protected:
override void AddAttributesToRender(System::Web::UI::HtmlTextWriter ^ writer);
protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer);
override this.AddAttributesToRender : System.Web.UI.HtmlTextWriter -> unit
Protected Overrides Sub AddAttributesToRender (writer As HtmlTextWriter)
Parámetros
- writer
- HtmlTextWriter
que HtmlTextWriter contiene el flujo de salida para la representación en el cliente.
Ejemplos
En el ejemplo de código siguiente se muestra cómo invalidar el AddAttributesToRender método en un control de servidor personalizado para que el CustomValidator mensaje de error siempre aparezca en negrita.
Importante
Este ejemplo tiene un cuadro de texto que acepta la entrada del usuario, que es una amenaza de seguridad potencial. De forma predeterminada, ASP.NET páginas web validan que la entrada del usuario no incluye elementos HTML ni de script. Para obtener más información, consulte Información general sobre vulnerabilidades de seguridad de script.
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet" Assembly="Samples.AspNet.CS" %>
<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - AddAttributesToRender - C# Example</title>
<script runat="server">
void CustomValidator1_ServerValidate(Object source, ServerValidateEventArgs args)
{
try
{
// Test whether the value entered into the text box is even.
int i = int.Parse(args.Value);
args.IsValid = ((i%2) == 0);
}
catch(Exception ex)
{
args.IsValid = false;
}
}
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - AddAttributesToRender - C# Example</h3>
<asp:Label id="Label1" runat="server"
Text="Enter an even number:" AssociatedControlID="TextBox1"/><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorAddAttributesToRender
id="Customvalidator1"
runat="server"
ControlToValidate="TextBox1"
Display="Static"
ErrorMessage="Not an even number!"
OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB.Controls" Assembly="Samples.AspNet.VB" %>
<%@ 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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Custom CustomValidator - AddAttributesToRender - VB.NET Example</title>
<script runat="server">
Sub CustomValidator1_ServerValidate(source As Object, args As ServerValidateEventArgs)
args.IsValid = False
Try
' Test whether the value entered into the text box is even or not.
Dim i As Integer = Integer.Parse(args.Value)
If (i Mod 2) = 0 Then
args.IsValid = True
End If
Catch
End Try
End Sub
</script>
</head>
<body>
<form id="Form1" method="post" runat="server">
<h3>Custom CustomValidator - AddAttributesToRender - VB.NET Example</h3>
<asp:Label id="Label1" runat="server" Text="Enter an even number:" AssociatedControlID="TextBox1" /><br />
<asp:TextBox id="TextBox1" runat="server" />
<aspSample:CustomCustomValidatorAddAttributesToRender id="Customvalidator1" runat="server" ControlToValidate="TextBox1" Display="Static" ErrorMessage="Not an even number!" OnServerValidate="CustomValidator1_ServerValidate" /><br /><br />
<asp:Button id="Button1" runat="server" Text="Validate" />
</form>
</body>
</html>
using System.Web;
using System.Security.Permissions;
namespace Samples.AspNet
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomCustomValidatorAddAttributesToRender : System.Web.UI.WebControls.CustomValidator
{
protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
{
// Show the CompareValidator's error message as bold.
writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight, "bold");
// Call the Base's AddAttributesToRender method.
base.AddAttributesToRender(writer);
}
}
}
Imports System.Web
Imports System.Security.Permissions
Namespace Samples.AspNet.VB.Controls
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomCustomValidatorAddAttributesToRender
Inherits System.Web.UI.WebControls.CustomValidator
Protected Overrides Sub AddAttributesToRender(ByVal writer As System.Web.UI.HtmlTextWriter)
' Show the CompareValidator's error message as bold.
writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight, "bold")
' Call the Base's AddAttributesToRender method.
MyBase.AddAttributesToRender(writer)
End Sub
End Class
End Namespace