CheckBox.OnCheckedChanged(EventArgs) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
引发 CheckBox 控件的 CheckedChanged 事件。 这使您可以直接处理该事件。
protected:
virtual void OnCheckedChanged(EventArgs ^ e);
protected virtual void OnCheckedChanged (EventArgs e);
abstract member OnCheckedChanged : EventArgs -> unit
override this.OnCheckedChanged : EventArgs -> unit
Protected Overridable Sub OnCheckedChanged (e As EventArgs)
参数
示例
下面的示例演示如何为 CheckedChanged 控件的 CheckBox 事件指定和编码处理程序。
注意
以下代码示例使用单文件代码模型,如果直接复制到代码隐藏文件中,可能无法正常工作。 必须将每个代码示例复制到扩展名为 .aspx 的空文本文件中。 有关 Web 窗体代码模型的详细信息,请参阅 ASP.NET Web 窗体页代码模型。
<%@ 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 runat="server">
<title>CheckBox CheckedChanged Example</title>
<script runat="server">
void Check_Clicked(Object sender, EventArgs e)
{
// Calculate the subtotal and display the result in currency format.
// Include tax if the check box is selected.
Message.Text = CalculateTotal(checkbox1.Checked).ToString("c");
}
void Page_Load(Object sender, EventArgs e)
{
// Display the subtotal without tax when the page is first loaded.
if(!IsPostBack)
{
// Calculate the subtotal and display the result in currency format.
Message.Text = CalculateTotal(false).ToString("c");
}
}
double CalculateTotal(bool Taxable)
{
// Calculate the subtotal for the example.
double Result = 1.99 + 2.99 + 3.99;
// Add tax, if applicable.
if(Taxable)
{
Result += Result * 0.086;
}
return Result;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>CheckBox CheckedChanged Example</h3>
Select whether to include tax in the subtotal.
<br /><br />
<table border="1" cellpadding="5">
<tr>
<th colspan="2">
Shopping cart
</th>
</tr>
<tr>
<td>
Item 1
</td>
<td>
$1.99
</td>
</tr>
<tr>
<td>
Item 2
</td>
<td>
$2.99
</td>
</tr>
<tr>
<td>
Item 3
</td>
<td>
$3.99
</td>
</tr>
<tr>
<td>
<b>Subtotal</b>
</td>
<td>
<asp:Label id="Message" runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:CheckBox id="checkbox1" runat="server"
AutoPostBack="True"
Text="Include 8.6% sales tax"
TextAlign="Right"
OnCheckedChanged="Check_Clicked"/>
</td>
</tr>
</table>
</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 runat="server">
<title>CheckBox CheckedChanged Example</title>
<script runat="server">
Sub Check_Clicked(sender As Object, e As EventArgs)
' Calculate the subtotal and display the result in currency format.
' Include tax if the check box is selected.
Message.Text = CalculateTotal(checkbox1.Checked).ToString("c")
End Sub
Sub Page_Load(sender As Object, e As EventArgs)
' Display the subtotal without tax when the page is first loaded.
If Not IsPostBack Then
' Calculate the subtotal and display the result in currency format.
Message.Text = CalculateTotal(false).ToString("c")
End If
End Sub
Function CalculateTotal(Taxable As Boolean) As Double
' Calculate the subtotal for the example.
Dim Result As Double = 1.99 + 2.99 + 3.99
' Add tax, if applicable.
If(Taxable)
Result += Result * 0.086
End If
Return Result
End Function
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>CheckBox CheckedChanged Example</h3>
Select whether to include tax in the subtotal.
<br /><br />
<table border="1" cellpadding="5">
<tr>
<th colspan="2">
Shopping cart
</th>
</tr>
<tr>
<td>
Item 1
</td>
<td>
$1.99
</td>
</tr>
<tr>
<td>
Item 2
</td>
<td>
$2.99
</td>
</tr>
<tr>
<td>
Item 3
</td>
<td>
$3.99
</td>
</tr>
<tr>
<td>
<b>Subtotal</b>
</td>
<td>
<asp:Label id="Message" runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:CheckBox id="checkbox1" runat="server"
AutoPostBack="True"
Text="Include 8.6% sales tax"
TextAlign="Right"
OnCheckedChanged="Check_Clicked"/>
</td>
</tr>
</table>
</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 runat="server">
<title>CheckBox CheckedChanged Example</title>
<script runat="server">
void Check_Clicked(Object sender, EventArgs e)
{
// Calculate the subtotal and display the result in currency format.
// Include tax if the check box is selected.
Message.Text = CalculateTotal(checkbox1.Checked).ToString("c");
}
void Page_Load(Object sender, EventArgs e)
{
// Display the subtotal without tax when the page is first loaded.
if(!IsPostBack)
{
// Calculate the subtotal and display the result in
// currency format.
Message.Text = CalculateTotal(false).ToString("c");
}
// Manually register the event-handling method for the
// CheckedChanged event of the CheckBox control.
checkbox1.CheckedChanged += new EventHandler(this.Check_Clicked);
}
double CalculateTotal(bool Taxable)
{
// Calculate the subtotal for the example.
double Result = 1.99 + 2.99 + 3.99;
// Add tax, if applicable.
if(Taxable)
{
Result += Result * 0.086;
}
return Result;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>CheckBox CheckedChanged Example</h3>
Select whether to include tax in the subtotal.
<br /><br />
<table border="1" cellpadding="5">
<tr>
<th colspan="2">
Shopping cart
</th>
</tr>
<tr>
<td>
Item 1
</td>
<td>
$1.99
</td>
</tr>
<tr>
<td>
Item 2
</td>
<td>
$2.99
</td>
</tr>
<tr>
<td>
Item 3
</td>
<td>
$3.99
</td>
</tr>
<tr>
<td>
<b>Subtotal</b>
</td>
<td>
<asp:Label id="Message" runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:CheckBox id="checkbox1" runat="server"
AutoPostBack="True"
Text="Include 8.6% sales tax"
TextAlign="Right"/>
</td>
</tr>
</table>
</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 runat="server">
<title>CheckBox CheckedChanged Example</title>
<script runat="server">
Sub Check_Clicked(sender As Object, e As EventArgs)
' Calculate the subtotal and display the result in currency format.
' Include tax if the check box is selected.
Message.Text = CalculateTotal(checkbox1.Checked).ToString("c")
End Sub
Sub Page_Load(sender As Object, e As EventArgs)
' Display the subtotal without tax when the page is first loaded.
If Not IsPostBack Then
' Calculate the subtotal and display the result in
' currency format.
Message.Text = CalculateTotal(false).ToString("c")
End If
' Manually register the event-handling method for the
' CheckedChanged event of the CheckBox control.
AddHandler checkbox1.CheckedChanged, AddressOf Check_Clicked
End Sub
Function CalculateTotal(Taxable As Boolean) As Double
' Calculate the subtotal for the example.
Dim Result As Double = 1.99 + 2.99 + 3.99
' Add tax, if applicable.
If(Taxable)
Result += Result * 0.086
End If
Return Result
End Function
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>CheckBox CheckedChanged Example</h3>
Select whether to include tax in the subtotal.
<br /><br />
<table border="1" cellpadding="5">
<tr>
<th colspan="2">
Shopping cart
</th>
</tr>
<tr>
<td>
Item 1
</td>
<td>
$1.99
</td>
</tr>
<tr>
<td>
Item 2
</td>
<td>
$2.99
</td>
</tr>
<tr>
<td>
Item 3
</td>
<td>
$3.99
</td>
</tr>
<tr>
<td>
<b>Subtotal</b>
</td>
<td>
<asp:Label id="Message" runat="server"/>
</td>
</tr>
<tr>
<td colspan="2">
<asp:CheckBox id="checkbox1" runat="server"
AutoPostBack="True"
Text="Include 8.6% sales tax"
TextAlign="Right"
OnCheckedChanged="Check_Clicked"/>
</td>
</tr>
</table>
</form>
</body>
</html>
注解
当 CheckedChanged 属性的值 Checked 在服务器的帖子之间发生更改时,将引发 该事件。
注意
控件 CheckBox 必须在发帖到服务器之间保留一些值,以便此事件正常工作。 确保为此控件启用了视图状态。
引发事件时,将通过委托调用事件处理程序。 有关详细信息,请参阅 如何:在 Web 窗体应用程序中使用事件。
OnCheckedChanged 方法还允许派生类对事件进行处理而不必附加委托。 这是在派生类中处理事件的首选技术。
继承者说明
在派生类中重写 OnCheckedChanged(EventArgs) 时,一定要调用基类的 OnCheckedChanged(EventArgs) 方法,以便已注册的委托对事件进行接收。