HtmlInputRadioButton.OnServerChange(EventArgs) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Вызывает событие ServerChange. Это позволяет создать настраиваемый обработчик событий при возникновении события.
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)
Параметры
Примеры
В следующем примере кода показано, как указать и закодировать обработчик события ServerChange . Настраиваемый обработчик событий обновляет метку на веб-странице, чтобы отобразить значение выбранной переключателя.
<%@ 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>
Комментарии
Событие ServerChange возникает, когда Checked свойство HtmlInputRadioButton элемента управления изменяет значения между записями на сервере. Это позволяет создать настраиваемый обработчик событий, который выполняет определенный набор инструкций (например, проверку данных) при возникновении события.
Замечание
Элемент управления должен иметь состояние представления, чтобы ServerChange событие работало правильно. Чтобы включить состояние представления для всех элементов управления на странице веб-форм, задайте Page.EnableViewState для свойства значение true. Вы также можете включить состояние представления для отдельного элемента управления, задав Control.EnableViewState для свойства значение true.
При вызове события обработчик событий вызывается через делегат. Дополнительные сведения см. в разделе "Обработка и создание событий".
Метод OnServerChange также позволяет производным классам обрабатывать событие без присоединения делегата. Это предпочтительный способ обработки события в производном классе.
Примечания для тех, кто наследует этот метод
При переопределении OnServerChange(EventArgs) в производном классе обязательно вызовите метод базового класса OnServerChange(EventArgs) , чтобы зарегистрированные делегаты получали событие.