Partilhar via


HtmlInputImage.RenderAttributes(HtmlTextWriter) Método

Definição

Renderiza os atributos do controle HtmlInputImage no objeto HtmlTextWriter especificado.

protected:
 override void RenderAttributes(System::Web::UI::HtmlTextWriter ^ writer);
protected override void RenderAttributes (System.Web.UI.HtmlTextWriter writer);
override this.RenderAttributes : System.Web.UI.HtmlTextWriter -> unit
Protected Overrides Sub RenderAttributes (writer As HtmlTextWriter)

Parâmetros

writer
HtmlTextWriter

O HtmlTextWriter que contém o fluxo de saída que será renderizado no cliente.

Exceções

A propriedade Src contém uma URL malformada.

Exemplos

O exemplo de código a seguir demonstra como substituir o RenderAttributes método em um controle de servidor personalizado para que um texto alternativo específico, acessível como uma Dica de Ferramenta, seja sempre exibido com o HtmlInputImage.

<%@ 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">
<script runat="server">
  
  void Page_Load(Object sender, EventArgs e)
  {
    
    // Set the OnClick attribute of the custom HtmlInputImage control.
    HtmlInputImage1.Attributes.Add("onclick", "alert('Hello client-side world.');");
  }

  void HtmlInputImage1_ServerClick(Object sender, ImageClickEventArgs e)
  {

    // Set the inner HTML of the div element.
    Div1.InnerHtml = "Hello server-side world.";
    
  }
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Custom HtmlInputImage - RenderAttributes - C# Example</title>
    </head>
    <body>
        <form id="form1" runat="server">
            <h3>Custom HtmlInputImage - RenderAttributes - C# Example</h3>
        
          <aspSample:CustomHtmlInputImageRenderAttributes 
            id="HtmlInputImage1" 
            name="HtmlInputImage1"
            runat="server" 
            type="image" 
                    src="Image1.jpg"
                    alt="Microsoft"
                    onserverclick="HtmlInputImage1_ServerClick" />
     
      <br />
      <br />

      <div 
        id="Div1" 
        runat="server" 
        style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px"/>
        
        </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">
<script runat="server">

  Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)

    ' Set the OnClick attribute of the custom HtmlInputImage control.
    HtmlInputImage1.Attributes.Add("onclick", "alert('Hello client-side world.');")

  End Sub

  Sub HtmlInputImage1_ServerClick(ByVal sender As Object, ByVal e As ImageClickEventArgs)

    ' Set the inner HTML of the div element.
    Div1.InnerHtml = "Hello server-side world."

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
        <title>Custom HtmlInputImage - RenderAttributes - Visual Basic Example</title>
    </head>
    <body>
        <form id="form1" runat="server">
            <h3>Custom HtmlInputImage - RenderAttributes - Visual Basic Example</h3>
        
          <aspSample:CustomHtmlInputImageRenderAttributes 
            id="HtmlInputImage1"
            name="HtmlInputImage1"
            runat="server" 
            type="image" 
                    src="Image1.jpg"
                    alt="Microsoft"
                    onserverclick="HtmlInputImage1_ServerClick" />
     
      <br />
      <br />

      <div 
        id="Div1" 
        runat="server" 
        style="DISPLAY: inline; WIDTH: 256px; HEIGHT: 15px"/>
        
        </form>
    </body>
</html>
using System.Web;
using System.Security.Permissions;

namespace Samples.AspNet.CS.Controls
{
    [AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Minimal)]
    public sealed class CustomHtmlInputImageRenderAttributes : System.Web.UI.HtmlControls.HtmlInputImage
    {
        protected override void RenderAttributes(System.Web.UI.HtmlTextWriter writer)
        {
            // Add an Alt attribute to the HtmlInputImage control.
            writer.Write(" alt='Alternate text from RenderAttributes'");
            
            // Call the base class's RenderAttributes method.
            base.RenderAttributes(writer);
        }
    }
}
Imports System.Web
Imports System.Security.Permissions

Namespace Samples.AspNet.VB.Controls
    <AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public NotInheritable Class CustomHtmlInputImageRenderAttributes
        Inherits System.Web.UI.HtmlControls.HtmlInputImage

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

            ' Add an Alt attribute to the HtmlInputImage control.
            writer.Write(" alt='Alternate text from RenderAttributes'")

            ' Call the base class's RenderAttributes method.
            MyBase.RenderAttributes(writer)
        End Sub
    End Class
End Namespace

Comentários

O RenderAttributes método resolve o conjunto de URL na Src propriedade, grava o onclick atributo do controle renderizado HtmlInputImage se a CausesValidation propriedade for truee, por fim, chama o método base RenderAttributes . Se o valor da Src propriedade for uma URL malformada, uma exceção HttpException será gerada.

O RenderAttributes método é usado principalmente por desenvolvedores de controle que estendem a funcionalidade do HtmlInputImage controle.

Aplica-se a

Confira também