HtmlButton.OnServerClick(EventArgs) Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Az eseményt emeli ServerClick ki. Ez lehetővé teszi, hogy egyéni kezelőt adjon meg az eseményhez.
protected:
virtual void OnServerClick(EventArgs ^ e);
protected virtual void OnServerClick(EventArgs e);
abstract member OnServerClick : EventArgs -> unit
override this.OnServerClick : EventArgs -> unit
Protected Overridable Sub OnServerClick (e As EventArgs)
Paraméterek
Példák
Az alábbi példakód bemutatja, hogyan adható meg deklaratívan egy eseménykezelő, és hogyan kódolhatja az ServerClick eseményt. Amikor a HtmlButton vezérlőelemre kattint, megjelenik a szövegmezőben megadott érték.
<%@ 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" >
<script language="C#" runat="server">
protected void FancyBtn_Click(object sender, EventArgs e)
{
Message.InnerHtml = "Your name is: " + Name.Value;
}
</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" id="BUTTON1">
<b><i> I'm a fancy HTML 4.0 button </i> </b>
</button>
<h1>
<span id="Message" runat="server"></span>
</h1>
</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" >
<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>
Az alábbi példakód bemutatja, hogyan adhat meg és kódolhat eseménykezelőt az ServerClick eseményhez programozott módon.
<%@ 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> HtmlButton Constructor Example </title>
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// Create a new HtmlButton control.
HtmlButton NewButtonControl = 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.
NewButtonControl.ServerClick += new System.EventHandler(this.Button_Click);
// Add the new HtmlButton control to the Controls collection of the
// PlaceHolder control.
ControlContainer.Controls.Add(NewButtonControl);
}
void Button_Click(Object sender, EventArgs e)
{
// Display a simple message.
Message.InnerHtml = "Thank you for clicking the button.";
}
</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>
<%@ 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>
Megjegyzések
Az ServerClick esemény akkor jön elő, amikor a HtmlButton vezérlőre kattint. Ez az esemény oda-vissza utazást okoz az ügyféltől a kiszolgálóig és vissza. Szándékosan eltér az ügyféloldali OnClick eseménytől. Ha ütközés áll fenn az ServerClick eseményt tartalmazó kód és az ügyféloldali OnClick esemény által futtatott kód között, a kiszolgálóoldali eseményutasítások felülírják az ügyféloldali kódot.
Az esemény létrehozása meghívja az eseménykezelőt egy meghatalmazotton keresztül. További információ: Események kezelése és emelése.
A OnServerClick metódus lehetővé teszi továbbá, hogy a származtatott osztályok meghatalmazott csatolása nélkül kezeljék az eseményt. Ez az előnyben részesített módszer az esemény származtatott osztályban való kezelésére.
Megjegyzések az öröklőkhöz
Származtatott osztályban történő felülbíráláskor OnServerClick(EventArgs) mindenképpen hívja meg az alaposztály metódusát OnServerClick(EventArgs) , hogy a regisztrált meghatalmazottak megkapják az eseményt.