CheckBoxList クラス
コントロールをデータ ソースに連結することによって動的に作成できる複数選択チェック ボックス グループを作成します。
この型のすべてのメンバの一覧については、CheckBoxList メンバ を参照してください。
System.Object
System.Web.UI.Control
System.Web.UI.WebControls.WebControl
System.Web.UI.WebControls.ListControl
System.Web.UI.WebControls.CheckBoxList
Public Class CheckBoxList
Inherits ListControl
Implements IRepeatInfoUser, INamingContainer, _
IPostBackDataHandler
[C#]
public class CheckBoxList : ListControl, IRepeatInfoUser,
INamingContainer, IPostBackDataHandler
[C++]
public __gc class CheckBoxList : public ListControl,
IRepeatInfoUser, INamingContainer, IPostBackDataHandler
[JScript]
public class CheckBoxList extends ListControl implements
IRepeatInfoUser, INamingContainer, IPostBackDataHandler
スレッドセーフ
この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。
解説
CheckBoxList コントロールを使用すると、データ連結によって動的に生成できる複数選択チェック ボックス グループを利用できます。これには、リストのそれぞれの項目に対応するメンバを持つ Items コレクションが含まれます。どの項目がチェックされているかを判断するには、そのコレクションを反復処理してリストの各項目の Selected プロパティをテストします。
リストの表示方法は RepeatLayout プロパティおよび RepeatDirection プロパティで指定できます。 RepeatLayout を RepeatLayout.Table (既定の設定) に設定した場合、リストはテーブル内に表示されます。 RepeatLayout.Flow に設定した場合、リストはテーブル構造なしで表示されます。既定では、 RepeatDirection は RepeatDirection.Vertical に設定されます。このプロパティを RepeatDirection.Horizontal に設定すると、リストは水平に表示されます。
CheckBoxList コントロールには、便利なデータ連結機能が用意されています。それぞれの CheckBox コントロールには強力なレイアウト制御機能が用意されています。
注意 このコントロールは、ユーザー入力を表示するために使用できます。ユーザー入力には悪意のあるクライアント スクリプトが含まれている可能性があります。アプリケーションに表示する前に、クライアントから送信された実行スクリプト、SQL ステートメントなどのコードの情報はすべて検査してください。ASP.NET には入力要求の検証機能があり、ユーザー入力の中のスクリプトと HTML をブロックできます。検証サーバー コントロールは、ユーザー入力を査定する目的でも用意されています。詳細については、「 検証サーバー コントロール 」を参照してください。
使用例
[Visual Basic, C#] Web ページに CheckBoxList コントロールを作成する方法を次の例に示します。
<%@ Page Language="VB" AutoEventWireup="True" %>
<html>
<head>
<script runat="server">
Sub Check_Clicked(sender as Object, e As EventArgs)
Message.Text = "Selected Item(s):<br><br>"
' Iterate through the Items collection of the CheckBoxList
' control and display the selected items.
Dim i As Integer
For i=0 To checkboxlist1.Items.Count - 1
If checkboxlist1.Items(i).Selected Then
Message.Text &= checkboxlist1.Items(i).Text & "<br>"
End If
Next
End Sub
</script>
</head>
<body>
<form runat="server">
<h3> CheckBoxList Example </h3>
Select items from the CheckBoxList.
<br><br>
<asp:CheckBoxList id="checkboxlist1"
AutoPostBack="True"
CellPadding="5"
CellSpacing="5"
RepeatColumns="2"
RepeatDirection="Vertical"
RepeatLayout="Flow"
TextAlign="Right"
OnSelectedIndexChanged="Check_Clicked"
runat="server">
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem>Item 4</asp:ListItem>
<asp:ListItem>Item 5</asp:ListItem>
<asp:ListItem>Item 6</asp:ListItem>
</asp:CheckBoxList>
<br><br>
<asp:label id="Message" runat="server"/>
</form>
</body>
</html>
[C#]
<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
<head>
<script runat="server">
void Check_Clicked(Object sender, EventArgs e)
{
Message.Text = "Selected Item(s):<br><br>";
// Iterate through the Items collection of the CheckBoxList
// control and display the selected items.
for (int i=0; i<checkboxlist1.Items.Count; i++)
{
if (checkboxlist1.Items[i].Selected)
{
Message.Text += checkboxlist1.Items[i].Text + "<br>";
}
}
}
</script>
</head>
<body>
<form runat="server">
<h3> CheckBoxList Example </h3>
Select items from the CheckBoxList.
<br><br>
<asp:CheckBoxList id="checkboxlist1"
AutoPostBack="True"
CellPadding="5"
CellSpacing="5"
RepeatColumns="2"
RepeatDirection="Vertical"
RepeatLayout="Flow"
TextAlign="Right"
OnSelectedIndexChanged="Check_Clicked"
runat="server">
<asp:ListItem>Item 1</asp:ListItem>
<asp:ListItem>Item 2</asp:ListItem>
<asp:ListItem>Item 3</asp:ListItem>
<asp:ListItem>Item 4</asp:ListItem>
<asp:ListItem>Item 5</asp:ListItem>
<asp:ListItem>Item 6</asp:ListItem>
</asp:CheckBoxList>
<br><br>
<asp:label id="Message" runat="server"/>
</form>
</body>
</html>
[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
名前空間: System.Web.UI.WebControls
プラットフォーム: Windows 2000, Windows XP Professional, Windows Server 2003 ファミリ
アセンブリ: System.Web (System.Web.dll 内)
参照
CheckBoxList メンバ | System.Web.UI.WebControls 名前空間 | CheckBox