HtmlButton.OnServerClick Method (EventArgs)
Raises the ServerClick event. This allows you to provide a custom handler for the event.
Assembly: System.Web (in System.Web.dll)
Parameters
- e
-
Type:
System.EventArgs
A System.EventArgs that contains the event data.
The ServerClick event is raised when the HtmlButton control is clicked. This event causes a round trip to occur from the client to the server and back. It is deliberately different from the client-side OnClick event. If a conflict exists between code run with a ServerClick event and code run by a client-side OnClick event, the server-side event instructions will override the client-side code.
Raising an event invokes the event handler through a delegate. For more information, see NIB: Raising an Event.
The OnServerClick method also allows derived classes to handle the event without attaching a delegate. This is the preferred technique for handling the event in a derived class.
Notes to Inheritors:
When overriding OnServerClick in a derived class, be sure to call the base class's OnServerClick method so that registered delegates receive the event.
The following code example demonstrates how to declaratively specify and code an event handler for the ServerClick event. When the HtmlButton control is clicked, the value entered in the text box is displayed.
<%@ 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" > <script language="VB" runat="server"> Sub FancyBtn_Click(Source As Object, E as EventArgs) Message.InnerHtml = "Your name is: " & Name.Value End Sub </script> <head runat="server"> <title> Enter Name: </title> </head> <body> <form id="form1" method="post" runat="server"> <h3> Enter Name: <input id="Name" type="text" size="40" runat="server" /> </h3> <button onserverclick=" FancyBtn_Click" runat="server"> <b><i> I'm a fancy HTML 4.0 button </i> </b> </button> <h1> <span id="Message" runat="server"></span> </h1> </form> </body> </html>
The following code example demonstrates how to programmatically specify and code an event handler for the ServerClick event.
<%@ 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> HtmlButton Constructor Example </title> <script runat="server"> Sub Page_Load(sender As Object, e As EventArgs) ' Create a new HtmlButton control. Dim NewButtonControl As New HtmlButton() ' Set the properties of the new HtmlButton control. NewButtonControl.ID = "NewButtonControl" NewButtonControl.InnerHtml = "Click Me" ' Create an EventHandler delegate for the method you want to handle the event ' and then add it to the list of methods called when the event is raised. AddHandler NewButtonControl.ServerClick, AddressOf Button_Click ' Add the new HtmlButton control to the Controls collection of the ' PlaceHolder control. ControlContainer.Controls.Add(NewButtonControl) End Sub Sub Button_Click(sender As Object, e As EventArgs) ' Display a simple message. Message.InnerHtml = "Thank you for clicking the button." End Sub </script> </head> <body> <form id="form1" runat="server"> <h3> HtmlButton Constructor Example </h3> <asp:PlaceHolder ID="ControlContainer" runat="server"/> <br /><br /> <span id="Message" runat="server"/> </form> </body> </html>
Available since 1.1