แก้ไข

แชร์ผ่าน


HtmlInputRadioButton.OnServerChange(EventArgs) Method

Definition

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

protected:
 virtual void OnServerChange(EventArgs ^ e);
protected virtual void OnServerChange (EventArgs e);
abstract member OnServerChange : EventArgs -> unit
override this.OnServerChange : EventArgs -> unit
Protected Overridable Sub OnServerChange (e As EventArgs)

Parameters

e
EventArgs

A EventArgs that contains the event data.

Examples

The following code 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.

<%@ 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>HtmlInputRadioButton Sample</title>
<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 id="form1" 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

      <br />

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

      <br />

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

   </form>

</body>
</html>

<%@ 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>HtmlInputRadioButton Sample</title>
<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 id="form1" 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

      <br />

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

      <br />

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

   </form>

</body>
</html>

<%@ 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>HtmlInputRadioButton ServerChange Example</title>
<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 id="form1" 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

      <br />

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

      <br />

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

   </form>

</body>
</html>

<%@ 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>HtmlInputRadioButton ServerChange Example</title>
<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 id="form1" 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

      <br />

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

      <br />

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

   </form>

</body>
</html>

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 Handling and Raising Events.

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

Applies to

See also