ListBoxコントロール

ListBoxコントロール

 ListBoxコントロールはWebページにリストボックスを表示します。DropDownListコントロールと似たような扱い方ができます。

■ 主なプロパティ

■ AutoPostBackプロパティ

 リストの選択を変更した時にポストバックが発生するかどうかを設定します。

■ Itemsプロパティ

 リストの項目のコレクションを取得します。

■ Rowsプロパティ

 リストボックスに表示する項目の行数を取得・設定します。

■ SelectedIndexプロパティ

 リスト内で選択された項目のインデックス番号を取得・設定します。

■ SelectedItemプロパティ

 リスト内で選択された最小のインデックスを持つ項目を取得します。

■ SelectedValueプロパティ

 リスト内で選択された項目の値を取得します。

■ SelectionModeプロパティ

 リストボックスコントロールの選択モードを取得・設定します。

■ 主なイベント

■ SelectedIndexChangedイベント

 リスト内の選択項目を変更した時に発生します。

 リストボックスはSelectionModeプロパティでユーザーがListBoxコントロール内で一度に選択できる項目数や、複数の項目を選択するかどうかを設定できます。Itemsプロパティのコレクションが持っているAddメソッドで項目を追加します。

プロジェクトの種類 ASP.NET Webアプリケーション
プロジェクト名 ListBoxTest

サンプルダウンロード

○ デザイン

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

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

○ プログラム

 次のように各イベントハンドラを記述してください。

Default.aspx.vb

  1. Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  2.  If Not IsPostBack Then
  3.   With ListBox1.Items
  4.    .Add("項目1")
  5.    .Add("項目2")
  6.    .Add("項目3")
  7.    .Add("項目4")
  8.   End With
  9.  End If
  10. End Sub
  11. Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
  12.  '選択のクリア
  13.  ListBox1.ClearSelection()
  14.  '単一選択と複数選択の切り替えと同時にボタンの表示を切り替え
  15.  If ListBox1.SelectionMode = ListSelectionMode.Single Then
  16.   ListBox1.SelectionMode = ListSelectionMode.Multiple
  17.   Button1.Text = "単一選択に切り替え"
  18.  Else
  19.   ListBox1.SelectionMode = ListSelectionMode.Single
  20.   Button1.Text = "複数選択に切り替え"
  21.  End If
  22. End Sub
  23. Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
  24.  Dim i As ListItem
  25.  Label1.Text = ""
  26.  'SelectedIndexプロパティの値が-1より大きければ選択された項目が存在
  27.  If ListBox1.SelectedIndex > -1 Then
  28.   '項目ごとに選択されているかどうかをチェック
  29.   For Each i In ListBox1.Items
  30.    If i.Selected Then
  31.     Label1.Text &= i.Text & " "
  32.    End If
  33.   Next
  34.  Else
  35.   '選択された項目がなければメッセージを表示
  36.   Label1.Text = "選択された項目はありません"
  37.  End If
  38. End Sub

○ 実行結果

実行結果
実行結果

 「切替」ボタンを押すと、選択モードが切り替わり、「ポストバック」ボタンを押すと、現在選択されている項目が表示されます。

前へ   次へ