Bagikan melalui


HtmlSelect.OnServerChange(EventArgs) Metode

Definisi

Menaikkan ServerChange peristiwa HtmlSelect kontrol. Ini memungkinkan Anda untuk menyediakan handler kustom untuk peristiwa tersebut.

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)

Parameter

e
EventArgs

EventArgs yang berisi data peristiwa.

Contoh

Contoh kode berikut menunjukkan cara menentukan dan mengodekan penanganan aktivitas untuk ServerChange peristiwa HtmlSelect kontrol. Penanganan aktivitas menentukan apakah item yang dipilih kompatibel satu sama lain.

<%@ 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 Button_Click (Object sender, EventArgs e)
    {
        Label1.Text = "You selected:";

        for (int i=0; i<=Select1.Items.Count - 1; i++)
        {
           if (Select1.Items[i].Selected)
               Label1.Text += "<br />    -" + Select1.Items[i].Text;      
        }

    }

    void Server_Change (Object sender, EventArgs e)
    {
        int Count = 0;

        for (int i=0; i<=Select1.Items.Count - 1; i++)
        {
           if (Select1.Items[i].Selected)
               Count++;      
        }

        if ((Count > 1) && (Select1.Items[0].Selected))
            Label2.Text = "Hey! You can't select 'All' with another selection!!";
        else
            Label2.Text = "";
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title> HtmlSelect Example </title>
</head>

<body>

   <form id="form1" runat="server">

      <h3> HtmlSelect Example </h3>

      Select items from the list: <br /><br />

      <select id="Select1" 
              multiple="true"
              onserverchange="Server_Change"
              runat="server">

         <option value="All"> All </option>
         <option value="1" selected="selected"> Item 1 </option>
         <option value="2"> Item 2 </option>
         <option value="3"> Item 3 </option>
         <option value="4"> Item 4 </option>
         <option value="5"> Item 5 </option>
         <option value="6"> Item 6 </option>

      </select>

      <br /><br />

      <button id="Button1"
              onserverclick="Button_Click"
              runat="server">

         Submit

      </button>

      <br /><br />

      <asp:Label id="Label1"
           runat="server"/>

      <br />

      <asp:Label id="Label2"
           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">

<script runat="server">

    Sub Button_Click (sender As Object, e As EventArgs)
        Dim i As Integer

        Label1.Text = "You selected:"
        For i = 0 to Select1.Items.Count - 1
           If Select1.Items(i).Selected Then
               Label1.Text = Label1.Text & "<br />    -" & Select1.Items(i).Text
           End If         
        Next
    End Sub

    Sub Server_Change (sender As Object, e As EventArgs)
        Dim i As Integer
        Dim Count As Integer = 0

        For i = 0 to Select1.Items.Count - 1
            If Select1.Items(i).Selected Then
                Count = Count + 1
            End If         
        Next

        If Count > 1 And Select1.Items(0).Selected Then
            Label2.Text = "Hey! You can't select 'All' with another selection!!"
        Else
            Label2.Text = ""
        End If
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title> HtmlSelect Example </title>
</head>
<body>
<form id="form1" runat="server">
   <div>

      <h3> HtmlSelect Example </h3>

      Select items from the list: <br /><br />

      <select id="Select1" 
              multiple="true"
              onserverchange="Server_Change"
              runat="server">

         <option value="All"> All </option>
         <option value="1" selected="selected"> Item 1 </option>
         <option value="2"> Item 2 </option>
         <option value="3"> Item 3 </option>
         <option value="4"> Item 4 </option>
         <option value="5"> Item 5 </option>
         <option value="6"> Item 6 </option>

      </select>

      <br /><br />

      <button id="Button1"
              onserverclick="Button_Click"
              runat="server">

         Submit

      </button>

      <br /><br />

      <asp:Label id="Label1"
           runat="server"/>

      <br />

      <asp:Label id="Label2" runat="server"/>

   </div>
</form>
</body>
</html>

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    void Button_Click (Object sender, EventArgs e)
    {
        // Display the selected items.
        Label1.Text = "You selected:";

        for (int i=0; i<=Select1.Items.Count - 1; i++)
        {
            if (Select1.Items[i].Selected)
                Label1.Text += "<br />    -" + Select1.Items[i].Text;      
        }
    }

    void Server_Change(Object sender, EventArgs e)
    {
        // The ServerChange event is commonly used for data validation.
        // This method will display a warning if the "All" option is  
        // selected in combination with another item in the list.
        int Count = 0;

        // Determine the number of selected items in the list.
        for (int i=0; i<=Select1.Items.Count - 1; i++)
        {
            if (Select1.Items[i].Selected)
                Count++;      
        }

        // Display an error message if more than one item is selected with
        // the "All" item selected.
        if ((Count > 1) && (Select1.Items[0].Selected))
            Label2.Text = "Hey! You can't select 'All' with another selection!!";
        else
            Label2.Text = "";
    }

    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.
        Select1.ServerChange += new System.EventHandler(this.Server_Change);
        Button1.ServerClick += new System.EventHandler(this.Button_Click);
    }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title> HtmlSelect Server Change Example </title>
</head>
<body>
<form id="form1" runat="server">
   <div>

      <h3> HtmlSelect Server Change Example </h3>

      Select items from the list: <br /><br />

      <select id="Select1" 
              multiple="true"
              runat="server">

         <option value="All"> All </option>
         <option value="1" selected="selected"> Item 1 </option>
         <option value="2"> Item 2 </option>
         <option value="3"> Item 3 </option>
         <option value="4"> Item 4 </option>
         <option value="5"> Item 5 </option>
         <option value="6"> Item 6 </option>

      </select>

      <br /><br />

      <button id="Button1"
              runat="server">

         Submit

      </button>

      <br /><br />

      <asp:Label id="Label1"
           runat="server"/>

      <br />

      <asp:Label id="Label2"
           runat="server"/>

   </div>
</form>
</body>
</html>

<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    Sub Button_Click (sender As Object, e As EventArgs)
        ' Display the selected items.
        Label1.Text = "You selected:"

        Dim i As Integer

        For i=0 To Select1.Items.Count - 1
            If Select1.Items(i).Selected Then
                Label1.Text &= "<br />    -" & Select1.Items(i).Text
            End If      
        Next
    End Sub

    Sub Server_Change(sender As Object, e As EventArgs)
        ' The ServerChange event is commonly used for data validation.
        ' This method will display a warning if the "All" option is 
        ' selected in combination with another item in the list.
        Dim Count As Integer = 0
        Dim i As Integer

        ' Determine the number of selected items in the list.
        For i=0 To Select1.Items.Count - 1
            If Select1.Items(i).Selected Then
                Count = Count + 1      
            End If
        Next

        ' Display an error message if more than one item is selected with
        ' the "All" item selected.
        If ((Count > 1) And (Select1.Items(0).Selected)) Then
            Label2.Text = "Hey! You can't select 'All' with another selection!!"
        Else
            Label2.Text = ""
        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 Select1.ServerChange, AddressOf Server_Change
        AddHandler Button1.ServerClick, AddressOf Button_Click
    End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title> HtmlSelect ServerChange Example </title>
</head>
<body>
<form id="form1" runat="server">
   <div>

      <h3> HtmlSelect ServerChange Example </h3>

      Select items from the list: <br /><br />

      <select id="Select1" 
              multiple="true"
              runat="server">

         <option value="All"> All </option>
         <option value="1" selected="selected"> Item 1 </option>
         <option value="2"> Item 2 </option>
         <option value="3"> Item 3 </option>
         <option value="4"> Item 4 </option>
         <option value="5"> Item 5 </option>
         <option value="6"> Item 6 </option>

      </select>

      <br /><br />

      <button id="Button1"
              runat="server">

         Submit

      </button>

      <br /><br />

      <asp:Label id="Label1"
           runat="server"/>

      <br />

      <asp:Label id="Label2"
           runat="server"/>

   </div>
</form>
</body>
</html>

Keterangan

Peristiwa ServerChange dimunculkan ketika item yang dipilih dalam HtmlSelect kontrol berubah antara postingan ke server.

Catatan

Kejadian ini dimunculkan hanya ketika pengguna memulai postingan ke server, seperti dengan mengklik tombol Kirim. Kejadian ini tidak menyebabkan terjadinya postingan ke server.

Catatan

Kontrol harus mengaktifkan status tampilan agar ServerChange kejadian berfungsi dengan benar.

Anda dapat menggunakan kejadian ini untuk melakukan validasi data pada HtmlSelect kontrol saat pengguna mengubah pilihan dalam kontrol.

Menaikkan peristiwa memanggil penanganan aktivitas melalui delegasi. Untuk informasi selengkapnya, lihat Menangani dan Meningkatkan Peristiwa.

Metode ini OnServerChange juga memungkinkan kelas turunan untuk menangani peristiwa tanpa melampirkan delegasi. Ini adalah teknik yang disukai untuk menangani peristiwa di kelas turunan.

Catatan Bagi Inheritor

Saat mengambil alih metode di kelas turunan OnServerChange(EventArgs) , pastikan untuk memanggil metode kelas OnServerChange(EventArgs) dasar sehingga delegasi terdaftar menerima peristiwa tersebut.

Berlaku untuk

Lihat juga