CheckBox Web 服务器控件声明性语法
更新:2007 年 11 月
创建复选框控件,该控件允许用户在 true 和 false 状态之间切换。
<asp:CheckBox
AccessKey="string"
AutoPostBack="True|False"
BackColor="color name|#dddddd"
BorderColor="color name|#dddddd"
BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
Inset|Outset"
BorderWidth="size"
CausesValidation="True|False"
Checked="True|False"
CssClass="string"
Enabled="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
Font-Bold="True|False"
Font-Italic="True|False"
Font-Names="string"
Font-Overline="True|False"
Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
Large|X-Large|XX-Large"
Font-Strikeout="True|False"
Font-Underline="True|False"
ForeColor="color name|#dddddd"
Height="size"
ID="string"
OnCheckedChanged="CheckedChanged event handler"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnUnload="Unload event handler"
runat="server"
SkinID="string"
Style="string"
TabIndex="integer"
Text="string"
TextAlign="Left|Right"
ToolTip="string"
ValidationGroup="string"
Visible="True|False"
Width="size"
/>
备注
CheckBox 控件在 Web 窗体页上创建复选框,该复选框允许用户在 true 和 false 状态之间切换。通过设置 Text 属性,可以指定要在该控件中显示的标题。标题可显示在复选框的右侧或左侧。设置 TextAlign 属性可以指定标题显示在哪一侧。
![]() |
---|
由于 <asp:CheckBox> 元素没有内容,因此可以使用 /> 结束该标记,而不必使用单独的结束标记。 |
若要确定是否选择了 CheckBox 控件,请测试 Checked 属性。当 CheckBox 控件的状态在向服务器的各次发送过程间更改时,将引发 CheckedChanged 事件。可以为 CheckedChanged 事件提供事件处理程序,以便当 CheckBox 控件的状态在向服务器的各次发送过程间更改时执行特定的任务。
![]() |
---|
在创建多个 CheckBox 控件时,还可以使用 CheckBoxList 控件。对于使用数据绑定创建一组复选框而言,CheckBoxList 控件更易于使用,而各 CheckBox 控件则使您可以更好地控制布局。 |
默认情况下,在单击 CheckBox 控件时不会自动向服务器发送窗体。若要启用自动发送,请将 AutoPostBack 属性设置为 true。
![]() |
---|
文本在 CheckBox 控件中显示之前并非 HTML 编码形式。这使得可以在文本中的 HTML 标记中嵌入脚本。如果控件的值是由用户输入的,请务必要对输入值进行验证以防止出现安全漏洞。 |
有关 CheckBox Web 服务器控件的属性和事件的详细信息,请参见 CheckBox 类文档。
示例
下面的示例演示在 .aspx 文件中声明 CheckBox 控件的示例。复选框被设置为在选中时立即将窗体发送回服务器。
<asp:CheckBox id="Check1" runat="server"
Text="CheckBox 1"
AutoPostBack="True"/>
<asp:CheckBox id="Check1" runat="server"
Text="CheckBox 1"
AutoPostBack="True"/>
下面的示例演示如何创建 CheckedChanged 事件的事件处理程序,以便将包含客户付帐地址的文本框的内容复制到包含发货地址的文本框中。
![]() |
---|
本示例包含一个文本框,用于接受用户输入,这是一个潜在的安全威胁。默认情况下,ASP.NET 网页验证用户输入是否不包括脚本或 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 Web Server Control Declarative Syntax</title>
<script runat="server">
Sub Check_Clicked(sender As Object, e As EventArgs)
If SameCheckBox.Checked Then
ShipTextBox.Text = BillTextBox.Text
Else
ShipTextBox.Text = ""
End If
End Sub
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>CheckBox Example</h3>
<table>
<tr>
<td>
Billing Address: <br />
<asp:TextBox id="BillTextBox"
TextMode="MultiLine"
Rows="5"
runat="server"/>
</td>
<td>
Shipping Address: <br />
<asp:TextBox id="ShipTextBox"
TextMode="MultiLine"
Rows="5"
runat="server"/>
</td>
</tr>
<tr>
<td>
</td>
<td>
<asp:CheckBox id="SameCheckBox"
AutoPostBack="True"
Text="Same as billing."
TextAlign="Right"
OnCheckedChanged="Check_Clicked"
runat="server"/>
</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 Example</title>
<script runat="server">
void Check_Clicked(Object sender, EventArgs e)
{
if(SameCheckBox.Checked)
ShipTextBox.Text = BillTextBox.Text;
else
ShipTextBox.Text = "";
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>CheckBox Example</h3>
<table>
<tr>
<td>
Billing Address: <br />
<asp:TextBox id="BillTextBox"
TextMode="MultiLine"
Rows="5"
runat="server"/>
</td>
<td>
Shipping Address: <br />
<asp:TextBox id="ShipTextBox"
TextMode="MultiLine"
Rows="5"
runat="server"/>
</td>
</tr>
<tr>
<td>
</td>
<td>
<asp:CheckBox id="SameCheckBox"
AutoPostBack="True"
Text="Same as billing."
TextAlign="Right"
OnCheckedChanged="Check_Clicked"
runat="server"/>
</td>
</tr>
</table>
</form>
</body>
</html>