次の方法で共有


CheckBox Web サーバー コントロールおよび CheckBoxList Web サーバー コントロールの概要

更新 : 2007 年 11 月

CheckBox コントロールおよび CheckBoxList コントロールには、ユーザーが yes/no (true/false) の選択肢を指定するための方法が用意されています。

このトピックの内容は次のとおりです。

  • 機能

  • 背景

  • コード例

  • クラス リファレンス

機能

CheckBox コントロールおよび CheckBoxList コントロールを使用すると、以下を実行できます。

  • チェック ボックスがオンになったとき、ページ ポストバックを発生させます。

  • ユーザーがチェック ボックスをオンにしたとき、ユーザーとの対話をキャプチャします。

  • 各チェック ボックスをデータベースのデータにバインドします。

ページのトップへ

背景

ASP.NET Web フォーム ページにチェック ボックスを追加する場合、CheckBox Web サーバー コントロール、または CheckBoxList Web サーバー コントロールを使用できます。どちらのコントロールにも、ユーザーが yes/no (true/false) の選択肢を指定するための方法が用意されています。

CheckBox コントロールは、ページに複数追加でき、それぞれ単独で機能します。または、CheckBoxList コントロールを使用することもできます。このコントロールは、チェック ボックス リスト項目のコレクションの親コントロールとして動作する、単一のコントロールです。これは、ListControl 基本クラスから派生しているため、ListBoxDropDownListRadioButtonList、および BulletedList の各 Web サーバー コントロールと機能がよく似ています。CheckBoxList コントロールを使用するための多くの手順は、他のリスト サーバー コントロールを使用する手順とほぼ同じです。

2 つのコントロールには、それぞれ利点があります。各 CheckBox コントロールを使用すると、CheckBoxList コントロールを使用する場合に比べ、ページのチェック ボックスのレイアウトをより綿密に制御できるようになります。たとえば、各チェック ボックスの間に、チェック ボックス以外のテキストを挿入できます。個々のチェック ボックスのフォントと色を制御することもできます。

データ ソース内のデータに基づいて一連のチェック ボックスを作成する場合は、CheckBoxList コントロールを使用することをお勧めします。その場合、個別の CheckBox コントロールをデータにバインドできます。

y860k7cx.alert_note(ja-jp,VS.90).gifメモ :

HtmlInputCheckBox コントロールを使用して ASP.NET Web フォーム ページにチェック ボックスを追加することもできます。詳細については、「HtmlInputCheckBox サーバー コントロールの宣言構文」を参照してください。

CheckBox イベントと CheckBoxList イベント

個別の CheckBox コントロールと CheckBoxList コントロールでは、イベントの動作が異なります。

CheckBox コントロールのイベント

個別の CheckBox コントロールをユーザーがクリックすると CheckedChanged イベントが発生します。既定では、このイベントでは、サーバーにページがポストされません。ただし、AutoPostBack プロパティを true に設定すると、コントロールにすぐにポストバックを実行させることができます。詳細については、「方法 : CheckBox Web サーバー コントロールにおけるユーザー選択に応答する」を参照してください。

y860k7cx.alert_note(ja-jp,VS.90).gifメモ :

自動ポストバック機能を使用するには、ブラウザが ECMAScript (JScript または JavaScript) をサポートしており、このスクリプトがユーザーのブラウザで有効になっている必要があります。

CheckedChanged イベントのイベント ハンドラを作成する必要はありません。ページの一部として実行される任意のコードで、どのチェック ボックスがオンになっているかを確認できます。一般に、CheckedChanged イベントのイベント ハンドラを作成するのは、チェック ボックスの値を読み取るだけでなく、チェック ボックスが変更されたことを知る必要がある場合に限られます。詳細については、「方法 : RadioButton Web サーバー コントロールの選択項目を設定および取得する」を参照してください。

CheckBoxList コントロールのイベント

CheckBoxList コントロールの場合は、リストでいずれかのチェック ボックスをオンにすると、SelectedIndexChanged イベントが発生します。既定では、このイベントでは、サーバーにページがポストされません。ただし、AutoPostBack プロパティを true に設定すると、コントロールにすぐにポストバックを実行させることができます。

y860k7cx.alert_note(ja-jp,VS.90).gifメモ :

自動ポストバック機能を使用するには、ブラウザが ECMAScript (JScript または JavaScript) をサポートしており、このスクリプトがユーザーのブラウザで有効になっている必要があります。

個々の CheckBox コントロールの場合と同様に、通常、CheckBoxList コントロールの状態のテストは、別の方法でページがポストされた後に行います。詳細については、「方法 : リスト Web サーバー コントロールの選択項目を確認する」を参照してください。

CheckBox コントロールの HTML 属性

CheckBox コントロールがブラウザに表示されるときは、チェック ボックスを表す input 要素と、それとは別の、チェック ボックスのキャプションを表す label 要素の 2 つの部分として表示されます。この 2 つの要素の組み合わせが span 要素にラップされます。

スタイルや属性の設定を CheckBox コントロールに適用すると、これらの設定は外側の span 要素に適用されます。たとえば、コントロールの BackColor プロパティを設定した場合、この設定は span 要素に適用されます。したがって、これは内側の input 属性と label 属性の両方に影響します。

チェック ボックスとラベルに対してそれぞれ別個の設定を適用することが必要な場合があります。CheckBox コントロールは、実行時に設定できる 2 つのプロパティをサポートします。InputAttributes プロパティでは、HTML 属性を input 要素に追加できます。また LabelAttributes プロパティでは、HTML 属性を label 要素に追加できます。設定した属性は、そのままブラウザに渡されます。たとえば、ユーザーがマウス ポインタを合わせたときに、ラベルではなく、チェック ボックスの色だけが変化するように input 要素の属性を設定する方法を次の例に示します。

[Visual Basic]

CheckBox1.InputAttributes.Add("onmouseover", _
    "this.style.backgroundColor = 'red'")
CheckBox1.InputAttributes.Add("onmouseout", _
    "this.style.backgroundColor = 'white'")
CheckBox1.InputAttributes.Add("onmouseover", 
    "this.style.backgroundColor = 'red'");
CheckBox1.InputAttributes.Add("onmouseout", 
    "this.style.backgroundColor = 'white'");

コントロールへのデータのバインディング

個々の CheckBox コントロールはデータ ソースにバインドできます。また、CheckBox コントロールの各プロパティはデータ ソースの任意のフィールドにバインドできます。たとえば、通常はデータベースの情報から、コントロールの Checked プロパティを設定します。

また、CheckBoxList コントロールもデータ ソースにバインドできます。この場合、データ ソース内のレコードが、各チェック ボックスにそれぞれ表示されます。

ページのトップへ

コード例

方法 : Web フォーム ページに CheckBox Web サーバー コントロールを追加する (Visual Studio)

方法 : Web フォーム ページに CheckBoxList Web サーバー コントロールを追加する

方法 : CheckBoxList Web サーバー コントロールにレイアウトを設定する

方法 : CheckBox Web サーバー コントロールの値をプログラムによって取得および設定する

方法 : CheckBox Web サーバー コントロールにおけるユーザー選択に応答する

方法 : リスト Web サーバー コントロールに項目を追加する (Visual Studio)

方法 : データ ソースの項目をリスト Web サーバー コントロールに読み込む (Visual Studio)

方法 : リスト Web サーバー コントロールでの変更に応答する

ページのトップへ

クラス リファレンス

CheckBox コントロールおよび CheckBoxList コントロールに関連するクラスの一覧を次の表に示します。

メンバ

説明

CheckBox

CheckBox コントロールのメイン クラスです。

CheckBoxList

CheckBoxList コントロールのメイン クラスです。

ListItem

CheckBoxList コントロールの各項目を表すクラスです。

Items

CheckBoxList コントロールの一覧の各項目に対応する項目のコレクションです。

ページのトップへ

参照

処理手順

方法 : リスト Web サーバー コントロールの選択項目を設定する (Visual Studio)

方法 : リスト Web サーバー コントロールの選択項目を確認する

参照

RadioButton Web サーバー コントロールおよび RadioButtonList Web サーバー コントロールの概要