แก้ไข

แชร์ผ่าน


RangeValidator.AddAttributesToRender(HtmlTextWriter) Method

Definition

Adds the HTML attributes and styles for the control that need to be rendered to the specified HtmlTextWriter object.

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)

Parameters

writer
HtmlTextWriter

An HtmlTextWriter that represents the output stream to render HTML content on the client.

Examples

The following code example demonstrates how to override the AddAttributesToRender method in a custom server control so that the RangeValidator text always displays as bold.

Important

This example has a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview.

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS.Controls" 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 RangeValidator - AddAttributesToRender - C# Example</title>
    <script runat="server">
      void ButtonClick(Object sender, EventArgs e)
      {
        if (Page.IsValid)
        {
          Label1.Text="Page is valid.";
        }
        else
        {
          Label1.Text="Page is not valid!!";
        }
      }
    </script>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">
      <h3>Custom RangeValidator - AddAttributesToRender - C# Example</h3>

      Enter a number from 1 to 10:<br />
      <asp:TextBox id="TextBox1" Runat="server" />

      <aspSample:CustomRangeValidatorAddAttributesToRender 
        id="RangeValidator1" 
        runat="server" 
        ControlToValidate="TextBox1" 
        MinimumValue="1" 
        MaximumValue="10" 
        Type="Integer" 
        EnableClientScript="false" 
        Text="The value must be from 1 to 10!" />
        
      <br />
      <br />
      <asp:Button id="Button1" Text="Submit" OnClick="ButtonClick" runat="server" /><br />
      <br />

      <asp:Label id="Label1" runat="server" />
    </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 RangeValidator - AddAttributesToRender - VB.NET Example</title>
        <script runat="server">
            Sub ButtonClick(sender As Object, e As EventArgs)
                If Page.IsValid Then
                    Label1.Text="Page is valid."
                Else
                    Label1.Text="Page is not valid!"
                End If
            End Sub
        </script>
    </head>
    <body>
        <form id="Form1" method="post" runat="server">
            <h3>Custom RangeValidator - AddAttributesToRender - VB.NET Example</h3>

            Enter a number from 1 to 10:<br />
            <asp:TextBox id="TextBox1" Runat="server" />
            
            <aspSample:CustomRangeValidatorAddAttributesToRender id="RangeValidator1" runat="server" 
             ControlToValidate="TextBox1" MinimumValue="1" MaximumValue="10" Type="Integer" 
             EnableClientScript="false" Text="The value must be from 1 to 10!" /><br />
             <br />
             
            <asp:Button id="Button1" Text="Submit" OnClick="ButtonClick" runat="server" /><br />
             <br />
             
            <asp:Label id="Label1" runat="server"/>
        </form>
    </body>
</html>
using System.Web;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls
{
  [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal)]
  public sealed class CustomRangeValidatorAddAttributesToRender : System.Web.UI.WebControls.RangeValidator
  {
    protected override void AddAttributesToRender(System.Web.UI.HtmlTextWriter writer)
    {
      // Show the Validation text as Bold 
      writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight, "bold");
      
      // Call the base 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 CustomRangeValidatorAddAttributesToRender
        Inherits System.Web.UI.WebControls.RangeValidator

        Protected Overrides Sub AddAttributesToRender(ByVal writer As System.Web.UI.HtmlTextWriter)

            ' Show the Validation text as Bold 
            writer.AddStyleAttribute(System.Web.UI.HtmlTextWriterStyle.FontWeight, "bold")

            ' Call the base AddAttributesToRender method.
            MyBase.AddAttributesToRender(writer)
        End Sub
    End Class
End Namespace

Applies to