HtmlSelect.OnServerChange(EventArgs) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Löst das ServerChange-Ereignis des HtmlSelect-Steuerelements aus. Dadurch können Sie einen benutzerdefinierten Handler für das Ereignis bereitstellen.
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
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie sie einen Ereignishandler für das ServerChange -Ereignis des HtmlSelect -Steuerelements angeben und codieren. Der Ereignishandler bestimmt, ob die ausgewählten Elemente miteinander kompatibel sind.
<%@ 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>
Hinweise
Das ServerChange Ereignis wird ausgelöst, wenn sich die ausgewählten Elemente im HtmlSelect Steuerelement zwischen Beiträgen zum Server ändern.
Hinweis
Dieses Ereignis wird nur ausgelöst, wenn der Benutzer einen Beitrag auf dem Server initiiert, z. B. durch Klicken auf eine Schaltfläche Senden. Dieses Ereignis führt nicht dazu, dass ein Post auf dem Server auftritt.
Hinweis
Für das Steuerelement muss der Ansichtszustand aktiviert sein, damit das ServerChange Ereignis ordnungsgemäß funktioniert.
Sie können dieses Ereignis verwenden, um eine Datenüberprüfung für das HtmlSelect Steuerelement durchzuführen, wenn der Benutzer die Auswahl im Steuerelement ändert.
Durch das Auslösen eines Ereignisses wird der Ereignishandler über einen Delegaten aufgerufen. Weitere Informationen finden Sie unter Behandeln und Auslösen von Ereignissen.
Mit der OnServerChange-Methode können auch abgeleitete Klassen das Ereignis ohne Anfügen eines Delegaten behandeln. Dies ist das bevorzugte Verfahren für die Behandlung des Ereignisses in einer abgeleiteten Klasse.
Hinweise für Vererber
Achten Sie beim Überschreiben der OnServerChange(EventArgs) -Methode in einer abgeleiteten Klasse darauf, die -Methode der Basisklasse OnServerChange(EventArgs) aufzurufen, damit registrierte Delegaten das Ereignis empfangen.