DataGridにDataSetをバインドするには
● DataGridにDataSetをバインドするサンプル

図 DataGridにDataSetをバインドするサンプル
このサンプルは、DataGridにDataSetをバインドしています。DataGridのAutoGenerateColumnsプロパティにTrueを設定してDataSet(DataTable)のカラムを自動生成させています。
このサンプルでは、以下のノウハウを習得することができます。
▲ DataSetにDataTableを格納する方法
▲ DataGridにDataSetをバインドする方法
このサンプルは、OleDbConnection, OleDbDataAdapterクラスを使用してAccess/SQL ServerのtblVsDotNetテーブルを読み込んでDataSetに格納します。行13では、tblVsDotNetテーブルからレコードを抽出するSQLを作成しています。行14では、Web.configに登録されているデータベース接続情報を取得しています。行15では、OleDbConnectionのインスタンスを生成しています。OleDbConnectionの引数には、データベースの接続情報を指定します。行16では、OleDbDataAdapterのインスタンスを生成しています。OleDbDataAdapterの引数には、SQLコマンドとOleDbConnectionを指定します。行17では、DataSetのインスタンスを生成しています。ここで生成したDataSetは、OleDbDataAdapterのFill()メッドで使用します。
行19では、OleDbDataAdapterのFill()メソッドでSQLのSelectステートメントを実行してtblVsDotNetテーブルのレコードを抽出してDataSetに格納します。Fill()メソッドの引数には、DataSetとDataTableの名前(VsDotNet)を指定します。
行20-23のWith…End Withでは、DataGridの各種プロパティを設定してDataSetをバインドしています。行21では、DataGridのDataSourceプロパティにDataSetを設定しています。行22では、DataGridのDataBind()メソッドでDataSetをバインドしています。これでDataSet(DataTable)のすべてのカラムが自動的に生成されてDataGridに表示されます。
12: Sub BindData()
13: Dim strSQL as String =
"Select * From tblVsDotNet"
14: Dim strCon as String =
ConfigurationSettings.AppSettings("conStringNw")
15: Dim con As OleDbConnection = New
OleDbConnection(strCon)
16: Dim da As OleDbDataAdapter = New
OleDbDataAdapter(strSQL, con)
17: Dim ds As DataSet = New DataSet()
19: da.Fill(ds, "VsDotNet")
20: With dgrdVsNet
21: .DataSource = ds
22: .DataBind()
23: End With
24: End Sub