GUIを使ったデータアクセスフォームを作ってみる (VS2005)

プロジェクトデータソースを元に割と簡単にデータアクセスフォームを作る事ができます。
マスターデータの一覧など、ちょっとした参照系なら充分かと思います。

では、さっそく作ってみましょう。

サンプル概要

EMP表の一覧表示フォームです。
できあがり時


1.プロジェクトデータソースを登録

「データ」-「新しいデータソースの追加」をクリックします。以下の「データソース接続ウィザード」が表示されます。データソース構成ウイザード

データの取得元は「データベース」を選択して「次へ」をクリックします。

「データ接続の選択」
データ接続の選択既存の接続がない場合、「新しい接続」をクリック

「接続の追加」
接続の追加

Oracleデータベース(Oracle ODP.NET)を選択して、接続の詳細タブの内容を設定します。

「データソース名」 設定済みのネットサービス名を選択出来ます。(ネットサービス名についてはこちらをどうぞ)

必要項目を設定して「OK」ボタンをクリックします。

「データベースオブジェクトの選択」
データベースオブジェクトの選択ここでは、EMP表だけを選択しました。
「完了」をクリックします。

その後、ソリューションエクスプローラーに以下のデータセットクラスが登録されます。

DataSet Class

2.ドラッグ&ドロップでコントロールを配置

Drug&Drop 「データソース」の「EMP」をDataGridViewを選択した後、フォームにドロップします。
すると自動的に画面下の4つのコントロール、DataGridViewが配置されました。

楽ですねぇぇ。

[BindingSource]コントロールの[DataSource]プロパティにはDataSet1、DataMemberプロパティにはEMPがセットされています。

3.できあがり

フォームを起動すると左のようになります。プログラムのソースも必要最低限自動で作成されます。

データの移動や、保存なども簡単にできます。

       Private Sub EMPBindingNavigatorSaveItem_Click( _
	    ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EMPBindingNavigatorSaveItem.Click
        Me.Validate()
        Me.EMPBindingSource.EndEdit()
        Me.EMPTableAdapter.Update(Me.DataSet1.EMP)

    End Sub

    Private Sub Form3_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: このコード行はデータを 'DataSet1.EMP' テーブルに読み込みます。必要に応じて移動、または削除をしてください。
        Me.EMPTableAdapter.Fill(Me.DataSet1.EMP)

    End Sub

まとめ

プロジェクトデータソース、ドラッグ&ドロップによって簡単なフォームが出来ました。テーブル内容を簡単に表示する用途にはヒジョーに役立つでしょう。

しかし業務の性質をよく考える事が必要であり、意図したタイミングでデータを更新するような画面には向きません。その場合はやはりコーディングが必要になります。

履歴

2011/07/15
公開
Loading