CheckBox.OnCheckedChanged(EventArgs) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
引發 CheckedChanged 控制項的 CheckBox 事件。 這允許您直接處理事件。
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)
參數
範例
下列範例示範如何指定和撰寫 控件事件CheckBox處理程式CheckedChanged的程序代碼。
注意
下列程式代碼範例使用單一檔案程式代碼模型,如果直接複製到程序代碼後置檔案,可能無法正常運作。 每個程式代碼範例都必須複製到具有.aspx擴展名的空文本檔中。 如需 Web Forms 程式代碼模型的詳細資訊,請參閱 ASP.NET 網頁代碼模型。
<%@ 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 Forms應用程式中的事件。
OnCheckedChanged 方法也允許衍生類別處理事件,而不用附加委派。 這是在衍生類別中處理事件的慣用技巧。
給繼承者的注意事項
當在衍生類別中覆寫 OnCheckedChanged(EventArgs) 時,請確定呼叫基底類別的 OnCheckedChanged(EventArgs) 方法,使已註冊的委派能接收到事件。