CheckBox.OnCheckedChanged(EventArgs) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Aciona o evento CheckedChanged do controle CheckBox. Permite manipular o evento diretamente.
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)
Parâmetros
Exemplos
O exemplo a seguir demonstra como especificar e codificar o manipulador para o CheckedChanged evento de um CheckBox controle .
Observação
Os exemplos de código a seguir usam o modelo de código de arquivo único e podem não funcionar corretamente se copiados diretamente em um arquivo code-behind. Cada exemplo de código deve ser copiado em um arquivo de texto vazio que tenha uma extensão .aspx. Para obter mais informações sobre o modelo de código do Web Forms, consulte ASP.NET Web Forms Page Code Model.
<%@ 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>
Comentários
O CheckedChanged evento é gerado quando o valor da Checked propriedade é alterado entre postagens no servidor.
Observação
Um CheckBox controle deve persistir alguns valores entre postagens no servidor para que esse evento funcione corretamente. Verifique se o estado de exibição está habilitado para esse controle.
A geração de um evento invoca o manipulador de eventos por meio de um delegado. Para obter mais informações, consulte Como consumir eventos em um aplicativo web forms.
O OnCheckedChanged método também permite que classes derivadas manipulem o evento sem anexar um delegado. Essa é a técnica preferencial para lidar com o evento em uma classe derivada.
Notas aos Herdeiros
Ao substituir OnCheckedChanged(EventArgs) em uma classe derivada, chame o método da OnCheckedChanged(EventArgs) classe base para que os delegados registrados recebam o evento.