This documentation is archived and is not being maintained.

HtmlInputRadioButton.OnServerChange Method

Raises the ServerChange event. This allows you to create a custom event handler when the event is raised.

[Visual Basic]
Protected Overridable Sub OnServerChange( _
   ByVal e As EventArgs _
)
[C#]
protected virtual void OnServerChange(
 EventArgs e
);
[C++]
protected: virtual void OnServerChange(
 EventArgs* e
);
[JScript]
protected function OnServerChange(
   e : EventArgs
);

Parameters

e
A System.EventArgs that contains the event data.

Remarks

The ServerChange event is raised when the Checked property of the HtmlInputRadioButton control changes values between posts to the server. This allows you to create a custom event handler that performs a specific set of instructions (such as data validation)when the event is raised.

Note   The control must have view state enabled for the ServerChange event to work correctly. To enable view state for all controls on the Web Forms page, set the Page.EnableViewState property to true. You can also enable view state for an individual control by setting the Control.EnableViewState property to true.

Raising an event invokes the event handler through a delegate. For more information, see Raising an Event.

The OnServerChange 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 OnServerChange in a derived class, be sure to call the base class's OnServerChange method so that registered delegates receive the event.

Example

[Visual Basic, C#] The following example demonstrates how to specify and code a handler for the ServerChange event. The custom event handler updates a label on the Web page to display the value of the selected radio button.

[Visual Basic] 

<%@ Page Language="VB" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      Sub Server_Change(sender As Object , e As EventArgs) 
      
         If Radio1.Checked Then
            Span1.InnerHtml = "You selected " & _
                              Radio1.Value
         ElseIf Radio2.Checked Then
            Span1.InnerHtml = "You selected " & _
                              Radio2.Value
         ElseIf Radio3.Checked Then
            Span1.InnerHtml = "You selected " & _
                              Radio3.Value
         End If

      End Sub
         

   </script>

</head>

<body>

   <form runat="server">

      <h3>HtmlInputRadioButton Sample</h3>

      <input type="radio" 
             id="Radio1" 
             name="Mode"
             value="Radio Button 1"
             OnServerChange="Server_Change" 
             runat="server"/>
      Option 1
      <br>

      <input type="radio" 
             id="Radio2" 
             name="Mode"
             value="Radio Button 2"
             OnServerChange="Server_Change" 
             runat="server"/>
      Option 2
      <br>

      <input type="radio" 
             id="Radio3" 
             name="Mode"
             value="Radio Button 3"
             OnServerChange="Server_Change" 
             runat="server"/>
      Option 3

      <p>

      <input type="submit" 
             id="Button1" 
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server"/>

   </form>

</body>
</html>

[C#] 
<%@ Page Language="C#" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      void Server_Change(object sender, EventArgs e) 
      {
         if (Radio1.Checked)
            Span1.InnerHtml = "You selected " +
                              Radio1.Value;
         else if (Radio2.Checked)
            Span1.InnerHtml = "You selected " +
                              Radio2.Value;
         else if (Radio3.Checked)
            Span1.InnerHtml = "You selected " +
                              Radio3.Value;
      }
         

   </script>

</head>

<body>

   <form runat="server">

      <h3>HtmlInputRadioButton Sample</h3>

      <input type="radio" 
             id="Radio1" 
             name="Mode"
             value="Radio Button 1"
             OnServerChange="Server_Change" 
             runat="server"/>
      Option 1
      <br>

      <input type="radio" 
             id="Radio2" 
             name="Mode"
             value="Radio Button 2"
             OnServerChange="Server_Change" 
             runat="server"/>
      Option 2
      <br>

      <input type="radio" 
             id="Radio3" 
             name="Mode"
             value="Radio Button 3"
             OnServerChange="Server_Change" 
             runat="server"/>
      Option 3

      <p>

      <input type="submit" 
             id="Button1" 
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>

[Visual Basic] 

<%@ Page Language="VB" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      Sub Server_Change(sender As Object, e As EventArgs) 

         If Radio1.Checked Then

            Span1.InnerHtml = "You selected " & Radio1.Value

         ElseIf Radio2.Checked Then

            Span1.InnerHtml = "You selected " & Radio2.Value

         ElseIf Radio3.Checked Then

            Span1.InnerHtml = "You selected " & Radio3.Value

         End If

      End Sub

      Sub Page_Load(sender As Object, e As EventArgs)

         ' 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 Radio1.ServerChange, AddressOf Server_Change
         AddHandler Radio2.ServerChange, AddressOf Server_Change
         AddHandler Radio3.ServerChange, AddressOf Server_Change
      
      End Sub         

   </script>

</head>

<body>

   <form runat="server">

      <h3>HtmlInputRadioButton ServerChange Example</h3>

      <input type="radio" 
             id="Radio1" 
             name="Mode"
             value="Radio Button 1"
             runat="server"/>
      Option 1
      <br>

      <input type="radio" 
             id="Radio2" 
             name="Mode"
             value="Radio Button 2"
             runat="server"/>
      Option 2
      <br>

      <input type="radio" 
             id="Radio3" 
             name="Mode"
             value="Radio Button 3"
             runat="server"/>
      Option 3

      <p>

      <input type="submit" 
             id="Button1" 
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>


[C#] 

<%@ Page Language="C#" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      void Server_Change(object sender, EventArgs e) 
      {
         if (Radio1.Checked)
         {
            Span1.InnerHtml = "You selected " + Radio1.Value;
         }
         else if (Radio2.Checked)
         {
            Span1.InnerHtml = "You selected " + Radio2.Value;
         }
         else if (Radio3.Checked)
         {
            Span1.InnerHtml = "You selected " + Radio3.Value;
         }
      }

      void Page_Load(object sender, EventArgs e)
      {
         // 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.
         Radio1.ServerChange += new System.EventHandler(this.Server_Change);
         Radio2.ServerChange += new System.EventHandler(this.Server_Change);
         Radio3.ServerChange += new System.EventHandler(this.Server_Change);
      }         

   </script>

</head>

<body>

   <form runat="server">

      <h3>HtmlInputRadioButton ServerChange Example</h3>

      <input type="radio" 
             id="Radio1" 
             name="Mode"
             value="Radio Button 1"
             runat="server"/>
      Option 1
      <br>

      <input type="radio" 
             id="Radio2" 
             name="Mode"
             value="Radio Button 2"
             runat="server"/>
      Option 2
      <br>

      <input type="radio" 
             id="Radio3" 
             name="Mode"
             value="Radio Button 3"
             runat="server"/>
      Option 3

      <p>

      <input type="submit" 
             id="Button1" 
             value="Submit" 
             runat="server"/>

      <p>

      <span id="Span1" 
            runat="server" />

   </form>

</body>
</html>

[C++, JScript] No example is available for C++ or JScript. To view a Visual Basic or C# example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

See Also

HtmlInputRadioButton Class | HtmlInputRadioButton Members | System.Web.UI.HtmlControls Namespace | ServerChange | System.EventArgs | Checked

Show: