PR

データベースへの接続がマウス操作だけで可能に

図10●DataGridViewコンポーネントへの操作を一覧表示するタスク・メニュー
図11●データソースのタイプを選択しているところ
図12●VS 2005のセットアップ画面
図13●VS 2005を起動したところ
図14●新しいプロジェクトを作成するためのダイアログ
図15●C#でWindowsアプリケーションを開発するプロジェクトを作成した場合の初期画面
図16●フォームのプロパティ・ウィンドウ
図17●フォームのプロパティ・ウィンドウで稲妻マークを押して,扱えるイベントを表示させたところ

 VS 2005で特筆すべき点の一つとして,データベース・アプリケーションの開発が容易になったことが挙げられます。VS 2003では,最初にDataAdapterクラスから派生しているコンポーネントをフォームに配置し,ウィザードに従ってデータベースへの接続,参照するテーブルの決定,型付きデータセットの作成を行い,最後にデータを表示するためのコンポーネントにバインドします*13

 一方,VS 2005では最初に表示用のコンポーネントを配置し,それにバインドするデータを選ぶために接続設定を行う,というように,VS 2003とは逆の手順でデータベースへの接続を設定します。ユーザーに見える部分からトップダウンで開発するため,作業がわかりやすくなると同時に,行う作業自体も簡単になります。

 実際の手順に沿って説明しましょう。ツールボックスの「データ」カテゴリにあるDataGridViewコンポーネント*14をフォームに配置すると,コンポーネントの右側にタスク・メニューが表示されます(図10[拡大表示])。タスク・メニューはVS 2005で追加されたもので,デザイナ画面に配置したコンポーネントへの操作を一覧表示してくれる便利な機能です。

 DataGridViewのタスク・メニューの「データソースの選択」のドロップダウン・リストを表示させて「プロジェクトデータソースの追加」を選択すると「データソース構成ウィザード」が起動します。そこで,参照するアプリケーション・データの取得元のタイプを「データベース」「Webサービス」「オブジェクト」から選択して次に進みます。次の画面で「新しい接続」をクリックしてデータソースのタイプを選択し(図11[拡大表示])*15,最後にデータベース内にあるオブジェクト(テーブルなど)を選択します。

 すると,デザイナ上のコンポーネント・パレットに,選択したテーブルに接続するためのテーブル・アダプタ(データ・テーブル名+TableAdapter),データをキャッシュするための型付きのデータセット(データベース名+DataSet),キャッシュされたデータとそのデータを表示/操作するコンポーネントとを結びつけるバインディング・ソース(データ・テーブル名+BindingSource)が追加されます。同時に,フォームの初期ロード時に呼び出されるイベント・ハンドラに,データテーブル・アダプタを使ってデータセットにデータを流し込むコードを自動的に作成します。

 上記ウィザードで追加した「型付きのデータベース用コンポーネント」はツールボックスに登録されるので,コンポーネントとして再利用できるようになります。ビルドを行うとツールボックスに「データベース名+DataSet」と「データ・テーブル名+TableAdapter」というコンポーネントが追加されていることがわかります。このコンポーネントの定義はソリューション・エクスプローラ上の型付きデータセット定義のデザイナ・コード(データセット名.Designer.cs)で宣言定義されています*16。そのため,別のプロジェクトで同じデータベースを扱う場合にも,このソース・ファイルを読み込むことでコンポーネントとして再利用できるのです。

アプリケーションを開発してみよう

 ここからはVS 2005を使って簡単なアプリケーションを作ってみます。利用する言語はC#ですが,手順自体はVisual Basic(VB)でもほとんど同じです。フォームを一つ持ったWindowsアプリケーションを作成し,ClickOnce機能を使ってデプロイするまでの手順を説明しましょう。

 VS 2005のインストールは難しくありません。ただ,インストール先のパソコンに,以前のベータ版であるVS 2005ベータ1がインストールされている場合は,VS 2005ベータ1関連のコンポーネントをアンインストールしておく必要がある点に注意してください*17

 VS 2005のインストールには動作周波数600MHz以上のPentium(推奨は1GHz以上),主記憶容量128MB以上(推奨は256MB以上)の仕様を満たすPCが必要です。Windows Server 2003,Windows XP(SP2以降),Windows 2000(SP4以降)で動作します。筆者が使った印象では,パフォーマンスはCPUよりも主記憶容量に依存するようで,メインメモリーが512MBより少ない環境では起動やビルド作業がかなり重く感じます。MSDNドキュメントを参照する場合は512MBでも重く感じることがあります。VS 2005でどんどん開発していこうと考えている人は,1GB以上のメモリーを搭載したPCを準備するほうがいいと思います。

 準備ができたらインストールを開始しましょう(Express Editionのインストールについてはカコミ記事「小規模なアプリ開発ならExpress Editionでも十分」を参照してください)。

 しばらくするとセットアップ用ウィンドウ(図12[拡大表示])が表示されるので,「Visual Studio 2005 Beta 2のインストール」を選択するとインストール・ウィザードが起動します。セットアップ画面で使用許諾契約に同意すると,インストールのタイプを「既定」「すべて」「カスタム」から選択する画面になります。通常は「既定」でよいでしょう。インストール内容を変更したい場合はカスタムを選択して現れるウィンドウで個々の機能を選択してください。

 インストールが完了すると結果が表示されるので,正常に終わったかどうかを必ず確認してください。VS 2005のインストールが終わったら,セットアップ用ウィンドウ(図12)で引き続いて「製品ドキュメントのインストール」を選択してMSDNライブラリをインストールします。それが終わったら今度は「Service Releaseの有無を調べる」(図12)を選択して最新リリースのチェックを行えば作業はすべて終了です。

 VS 2005をインストールすると,スタートメニューに「Microsoft Visual Studio 2005 Beta 2」と「Microsoft .NET Framework SDK v2.0」が追加されます*18。ここで「Microsoft Visual Studio 2005 Beta 2」を選択するとVS 2005のIDEが起動します(図13[拡大表示])。プログラムの作成や作成したアプリケーションの配布作業はこの画面から行います。

ソリューション単位でアプリケーションを管理する

 プログラムを作成するには,IDEの「ファイル」メニューで「新規作成」「プロジェクト」と選択するか,Ctrl+Shift+Nのショートカットキーを使います。そうして現れるプロジェクトの新規作成ダイアログ(図14[拡大表示])で,「プロジェクトの種類」では「Visual C#」を,右側の「テンプレート」では「Windowsアプリケーション」を選びます*19。ダイアログの「プロジェクト名」のところには,作成するアプリケーション・プロジェクトの名前を入力します。ここで入力した名前は最終的にできあがるアプリケーションの実行ファイル名になります。「場所」のところにはプロジェクトを保存するパスを入力します。デフォルトでは「ツール」メニューの「オプション」で設定した「マイプロジェクト」のパスが入力されています。

 「ソリューション名」のところにはソリューションの名前が入ります。ソリューションは一つ以上のプロジェクトを含み,C#,VB,C++などのプロジェクトを一緒に管理できます*20。ソリューションが管理するプロジェクトの情報は,拡張子が「.sln」のファイル内に格納されています。IDEには一度に一つのソリューションしかロードできないので,関連のあるプロジェクトは一つのソリューションでまとめて管理するようにします。

 「ソリューションのディレクトリを作成」のチェックを付けると,保存先に指定したフォルダ下にソリューション名のフォルダができあがり,その下にプロジェクト名のフォルダができあがります。ここではプロジェクトの名前を「Nikkei001」,ソリューション名を「NikkeiToku」として,「ソリューションのディレクトリを作成」にチェックを入れてプロジェクトを作成することにします。

 プロジェクトを作成するとIDEの画面が表示されます(図15[拡大表示])。中央のForm1.cs[デザイン]のタブ内にアプリケーションのメインのフォームとなるForm1が表示されます(このウィンドウを,フォーム・デザイナと呼びます)。ビジュアル開発ではフォーム・デザイナで,フォームのサイズを変更したり,IDEの左側のツールボックスからコンポーネントを追加してアプリケーションに機能を追加していきます*21。IDEの右側にはソリューション・エクスプローラやプロパティ・ウィンドウが表示されます。これらのウィンドウが表示されていない場合は,「表示」メニューでそれぞれのウィンドウを指定して表示してください。

 プロパティ・ウィンドウには,フォーム・デザイナでフォーカスのあるコントロールに対してビジュアル開発時に変更可能なプロパティが表示されています(図16[拡大表示])。フォーム・デザイナでフォームをクリックしてから,プロパティ・ウィンドウのText属性の値を「日経ソフトウエア」に変更してEnterキーを押すと,フォームのキャプション文字が「Form1」から「日経ソフトウエア」に変わります。コード・ウィンドウ(Form1.cs)やフォーム・デザイナのタブにあるファイル名の横に表示される「*(アスタリスク)」は,ソースコードまたはデザインに変更があってからまだソースが保存されていないことを示しています。

 VS 2005で作成するWindowsアプリケーションは,ユーザーがアプリケーションに対して何かのアクションを起こしたら対応する処理を実行する「イベントドリブン(イベント駆動)形式」になります。例えば,「ボタンが押されたらメッセージを表示する」「ファイルが選択されたらファイルの中から特定のキーワードを抽出する」と言ったように,「~が発生したら」がイベントに対応し,「~する」がイベントに対応する処理の内容となります。

 それぞれのコントロールで処理できるイベントの一覧は,プロパティ・ウィンドウの上部にある稲妻マークをクリックすると見ることができます。各項目を選択状態にすると,プロパティ・ウィンドウの下段にそのイベントがどのようなときに発生するのか簡単な説明が表示されます(図17[拡大表示])。