DataTableをバインドするには

 

  CheckBoxListDataTableをバインドするサンプル

 

 

CheckBoxListDataTableをバインドするサンプル

 

ここで解説するサンプルは、ランタイム時にDataTableを作成してCheckBoxListにバインドしています。CheckBoxListからアイテムをチェックしてOKボタンをクリックするとチェックしたアイテムが表示されます。

 

このサンプルでは、以下のノウハウを習得できます。

 

   DataTableを作成する方法

   CheckBoxListDataTableをバインドする方法

 

New DataTableDataTableを生成したら、ColumnsコレクションのAdd()メソッドでDataTableのカラムを追加します。DataTableのカラムは、New DataColumn()で生成します。DataColumnの引数には、カラム名とデータ型を指定します。行10-11では、ValueTextのカラムを追加しています。GetType(String)では、カラムのデータ型(文字型)を指定しています。行13では、DataTableNewRow()メソッドでDataRow(レコード)を生成しています。行14-15では、DataRowText/Valueカラムに値を設定しています。行16では、DataTableRowsコレクションのAdd()メソッドでDataRowDataTableに追加しています。

 

  7:     Dim dt As New DataTable
  8:     Dim dr As DataRow
  9:     With dt
 10:       .Columns.Add( New DataColumn("Value", GetType(String)) )
 11:       .Columns.Add( New DataColumn("Text", GetType(String)) )
 13:       dr = .NewRow()
 14:       dr.Item("Value") = "VB.NET"
 15:       dr.Item("Text") = "Visual Basic .NET"
 16:       .Rows.Add(dr)

::::
 32:     End With

 

DataTableCheckBoxListに表示させるには、DataSourceプロパティにDataTableを設定してDataBind()メソッドでバインドします。CheckBoxListTextValueをバインドさせるには、DataTextFieldDataValueFieldプロパティにDataTableの対応するカラム名(Text/Value)を設定します。

 

34:     With chklVsNet
 35:       .DataSource = dt
 36:       .DataValueField = "Value"
 37:       .DataTextField = "Text"
 38:       .DataBind()
 39:     End With

 

ASP.NET Listコントロールのホームへ戻る