.net修行中44(DBから取得したデータを使ってDataGridViewのコンボボックス列をつくる)
2013年07月31日 0時00分50秒
こんにちは、モンクです。
前回(.net修行中43)を更に応用して、データソースをデータベースのデータにしてみましょう。
実際にはこちらのほうが実用的でしょう。
<br /> Try<br /> '** コンボボックス列型の変数<br /> Dim cbc As DataGridViewComboBoxColumn = New DataGridViewComboBoxColumn</p> <p> '** コンボボックス列アドレスを渡す(この例では先頭)<br /> cbc = dgv.Columns(0)</p> <p> '** データベースから取得したデータを格納<br /> Dim ds As DataSet = SELECT_CODE_NAME_FROM_TAB1()</p> <p> '***********************<br /> '** コンボボックス設定<br /> '***********************<br /> '** データソース<br /> cbc.DataSource = ds.Tables("TAB1")</p> <p> '** 内部処理に使う値(VALUE値)<br /> cbc.ValueMember = ds.Tables("TAB1").Columns("CODE").ToString</p> <p> '** 表示する値<br /> cbc.DisplayMember = ds.Tables("TAB1").Columns("NAME").ToString</p> <p> Catch ex As Exception<br /> MsgBox(ex.Message)<br /> End Try</p> <p>
DBからデータを取得するメソッドである SELECT_CODE_NAME_FROM_TAB1() はデータセット(以下ds)を返します。
dsの中には、データテーブル(以下dt)が入っています。
そのdtは名前が TAB1 で 列の名前がそれぞれ CODE , NAME です。
データソースに TAB1 をバインドし、それぞれVALUE値に使用する列、表示値に使用する列を指定します。
さて、.net仕事で使うことがなくなるため、一旦ここで記事を終了します。
とはいえ、修行はまだまだ続きます。
最近のコメント