Visual Basic 図解 基礎解説 |
この説明は VB.NET 2002, VB.NET 2003 に関するものです。VB2005やVB6にはあてはまりません。
掲載している画像はVB.NET2003のものです。
概要DataGridに列を追加する方法を説明します。 ここで説明する手順を実行しなくてもDataGridは自動的に列を表示することができます。しかし、自動的に表示される列は幅を変更したり、独自のイベントを受け取ったりなど細かい動作を制御することができません。 |
以下では手順を示してから、具体的なプログラム例を紹介します。 全ての作業はプログラムから行うこともできますが、ここではデザイン時にプロパティウィンドウで設定する方法を説明します。
ここではデータベースからデータを取得する場合に限って説明をします。
DataGridのプロパティウィンドウでTableStylesから以下のコレクションエディタを開き、[追加]ボタンをクリックします。
MappingNameは何でもよいのですが、ここでは仮に「DefaultTable」と入力します。
プログラム側ではここで指定したMappingNameを持つTableをデータグリッドに連結してください。具体例は後にあるサンプルコードをご覧下さい。
メモ:MappingNameはここで指定するプロパティと実際のテーブルを結びつける役割をしています。
さきほどの画面でGridColumnStylesを選択して表示されるボタンを表示すると以下の画面が表示されます。
この画面で[追加]をクリックします。
MappingNameには実際にデータベースから取得するときのデータの列名を指定します。
この画面でWidthを指定して列幅を変更したり、Alignmentでテキストの位置を調節したりといくつかの細かい設定が可能です。
以上
上記の設定を利用した列を表示する例
Dim
Cn As SqlClient.SqlConnection
'データベースへの接続方法は環境により異なります。以下の行を適当に書き換えてください。 Dim sqlSelect
As New
SqlClient.SqlCommand("SELECT au_id FROM authors", Cn) Adapter.Fill(Table) DataGrid1.DataSource = Table |
上記の設定を利用して列に細かい設定をする例
'列の幅を200にします。 DataGrid1.TableStyles("DefaultTable").GridColumnStyles("au_id").Width = 200 'テキストを右寄せで表示します。 |