ListBoxコントロール
ListBoxコントロールはWebページにリストボックスを表示します。DropDownListコントロールと似たような扱い方ができます。
■ 主なプロパティ
■ AutoPostBackプロパティ
リストの選択を変更した時にポストバックが発生するかどうかを設定します。
■ Itemsプロパティ
リストの項目のコレクションを取得します。
■ Rowsプロパティ
リストボックスに表示する項目の行数を取得・設定します。
■ SelectedIndexプロパティ
リスト内で選択された項目のインデックス番号を取得・設定します。
■ SelectedItemプロパティ
リスト内で選択された最小のインデックスを持つ項目を取得します。
■ SelectedValueプロパティ
リスト内で選択された項目の値を取得します。
■ SelectionModeプロパティ
リストボックスコントロールの選択モードを取得・設定します。
■ 主なイベント
■ SelectedIndexChangedイベント
リスト内の選択項目を変更した時に発生します。
リストボックスはSelectionModeプロパティでユーザーがListBoxコントロール内で一度に選択できる項目数や、複数の項目を選択するかどうかを設定できます。Itemsプロパティのコレクションが持っているAddメソッドで項目を追加します。
プロジェクトの種類 |
ASP.NET Webアプリケーション |
プロジェクト名 |
ListBoxTest |
サンプルダウンロード
○ デザイン
Webフォームを追加して、次の図のように各コントロールを配置してください。
コントロールの配置例
○ プログラム
次のように各イベントハンドラを記述してください。
Default.aspx.vb
- Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
- If Not IsPostBack Then
- With ListBox1.Items
- .Add("項目1")
- .Add("項目2")
- .Add("項目3")
- .Add("項目4")
- End With
- End If
- End Sub
- Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
- '選択のクリア
- ListBox1.ClearSelection()
- '単一選択と複数選択の切り替えと同時にボタンの表示を切り替え
- If ListBox1.SelectionMode = ListSelectionMode.Single Then
- ListBox1.SelectionMode = ListSelectionMode.Multiple
- Button1.Text = "単一選択に切り替え"
- Else
- ListBox1.SelectionMode = ListSelectionMode.Single
- Button1.Text = "複数選択に切り替え"
- End If
- End Sub
- Protected Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
- Dim i As ListItem
- Label1.Text = ""
- 'SelectedIndexプロパティの値が-1より大きければ選択された項目が存在
- If ListBox1.SelectedIndex > -1 Then
- '項目ごとに選択されているかどうかをチェック
- For Each i In ListBox1.Items
- If i.Selected Then
- Label1.Text &= i.Text & " "
- End If
- Next
- Else
- '選択された項目がなければメッセージを表示
- Label1.Text = "選択された項目はありません"
- End If
- End Sub
○ 実行結果
実行結果
「切替」ボタンを押すと、選択モードが切り替わり、「ポストバック」ボタンを押すと、現在選択されている項目が表示されます。
前へ 次へ