CheckBoxコントロール

CheckBoxコントロール  CheckBoxListコントロール

 CheckBoxコントロール、CheckBoxListコントロールはチェックボックスを表示するためのコントロールです。複数の項目から選択する際に使用します。CheckBoxコントロールは単体のチェックボックスを表示し、CheckBoxListコントロールはグループ化してリストで表示します。

■ 主なプロパティ(CheckBox)

プロパティ名 概要
Checked CheckBoxコントロールがチェックされているかどうかを示す値を取得・設定する
Text CheckBoxコントロールの表示内容を取得・設定する
CheckBoxの主なプロパティ

■ 主なプロパティ(CheckBoxList)

プロパティ名 概要
Items CheckBoxListコントロールの項目のコレクションを取得する
SelectedIndex CheckBoxListコントロール内の選択された項目のインデックスを取得・設定する
SelectedItem CheckBoxListコントロール内の選択された項目を取得・設定する
SelectedValue CheckBoxListコントロール内の選択された項目の値を取得・設定する
CheckBoxListの主なプロパティ

■ 主なイベント(CheckBoxList)

イベント名 概要
SelectedIndexChanged CheckBoxListコントロール内の選択項目が変更されたときに発生する
表2-19 CheckBoxListの主なイベント
プロジェクトの種類 ASP.NET Webアプリケーション
プロジェクト名 CheckBoxTest

サンプルダウンロード

○ デザイン

 Webフォームを追加して、次の図のように各コントロールを配置してください。

コントロールの配置例
コントロールの配置例

○ プログラム

 次のように各イベントハンドラを記述してください。chkList_SelectedIndexChangedイベントは、chkListをダブルクリックするとスケルトンが表示されます。

index.aspx.cs

  1. protected void Page_Load(object sender, EventArgs e)
  2. {
  3.  //ポストバックのときは処理しない
  4.  if (this.IsPostBack)
  5.  {
  6.   return;
  7.  }
  8.  //CheckBoxListコントロールに項目をセットする
  9.  this.chkList.Items.Add("りんご");
  10.  this.chkList.Items.Add("ばなな");
  11.  this.chkList.Items.Add("みかん");
  12.  this.chkList.Items.Add("もも");
  13.  this.chkList.Items.Add("なし");
  14. }
  15. protected void btnSend_Click(object sender, EventArgs e)
  16. {
  17.  //チェックの状態を表示
  18.  if (this.chkSingle.Checked)
  19.  {
  20.   this.lblMessageTop.Text = "ON";
  21.  }
  22.  else
  23.  {
  24.   this.lblMessageTop.Text = "OFF";
  25.  }
  26. }
  27. protected void chkList_SelectedIndexChanged(object sender, EventArgs e)
  28. {
  29.  //チェックされている項目をループして検索
  30.  this.lblMessageBottom.Text = string.Empty;
  31.  foreach (ListItem li in this.chkList.Items)
  32.  {
  33.     if (li.Selected)
  34.   {
  35.     this.lblMessageBottom.Text += li.Value + " ";
  36.   }
  37.  }
  38. }

○ 実行結果

実行結果
実行結果

○ 解説

 31~38行目では、CheckBoxコントロールの状態を確認しています。31行目にあるように、Checkeプロパティにチェックがされている場合はtrueがセットされているので、if文で判定して処理を分岐しています。

 45~51行目では、CheckBoxListコントロールの状態を確認しています。このコントロールはListなので、前節のListBoxコントロールと同じような処理を書くことができます。項目を検索して、Selectedプロパティを確認すれば、その項目がチェックされているかどうかがわかります。

前へ   次へ