HtmlInputImage.OnPreRender(EventArgs) Method

Definition

Raises the PreRender event.

protected:
 override void OnPreRender(EventArgs ^ e);
protected public:
 override void OnPreRender(EventArgs ^ e);
protected override void OnPreRender (EventArgs e);
protected internal override void OnPreRender (EventArgs e);
override this.OnPreRender : EventArgs -> unit
Protected Overrides Sub OnPreRender (e As EventArgs)
Protected Friend Overrides Sub OnPreRender (e As EventArgs)

Parameters

e
EventArgs

An EventArgs that contains the event data.

Examples

The following code example demonstrates how to override the OnPreRender method so that it always displays a custom HtmlInputImage server control with no border.

<%@ 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)
  {    
    
    // Define the onclick attribute of custom HtmlInputImage.
    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 - Method - C# Example</title>
    </head>
    <body>
        <form id="form1" runat="server">

            <h3>Custom HtmlInputImage - Method - C# Example</h3>
        
          <aspSample:CustomHtmlInputImageOnPreRender 
            id="HtmlInputImage1" 
        alt="image1.jpg"
            name="HtmlInputImage1"
            runat="server" 
            type="image" 
        src="image1.jpg"
        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)
    
    ' Define 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 - Method - Visual Basic Example</title>
    </head>
    <body>
        <form id="form1" runat="server">

            <h3>Custom HtmlInputImage - Method - Visual Basic Example</h3>
        
          <aspSample:CustomHtmlInputImageOnPreRender 
            id="HtmlInputImage1"
                    alt="image1" 
            name="HtmlInputImage1"
            runat="server" 
            type="image" 
                    src="Image1.jpg"
                    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 CustomHtmlInputImageOnPreRender : System.Web.UI.HtmlControls.HtmlInputImage
    {
        protected override void OnPreRender(System.EventArgs e)
        {
            // Call the base class's OnPreRender method.
            base.OnPreRender(e);
            
            // Always display the HtmlInputImage control with no border.
            this.Border = 0;
        }
    }
}
Imports System.Web
Imports System.Security.Permissions

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

        Protected Overrides Sub OnPreRender(ByVal e As System.EventArgs)

            ' Call the base class's OnPreRender method.
            MyBase.OnPreRender(e)

            ' Always display the HtmlInputImage control with no border.
            Me.Border = 0
        End Sub
    End Class
End Namespace

Remarks

The OnPreRender method is called just prior to rendering the HtmlInputImage control. The OnPreRender method is used primarily by control developers extending the functionality of the HtmlInputImage control.

Notes to Inheritors

When overriding the OnPreRender(EventArgs) method in a derived class, be sure to call the base class's OnPreRender(EventArgs) method so that registered delegates receive the PreRender event.

Applies to

See also