ワークシートでのGridDesktopデータバインディング機能の実装
サンプル データベースの作成
- 例と一緒に使用するためのサンプル データベースを作成します。Microsoft Access を使用して、Products テーブルを含むサンプル データベースを作成しました(以下にスキーマを示します)。
- Productsテーブルにダミーレコード3件を追加します。 Productsテーブルのレコード
サンプルアプリケーションの作成
Visual Studioでシンプルなデスクトップアプリケーションを作成し、以下の手順を実行します。
- ツールボックスから"GridControl"コントロールをドラッグしてフォーム上に配置します。
- ツールボックスからボタンを4つフォームの下部にドロップし、それぞれのテキストプロパティをBind Worksheet、Add Row、Delete Row、Update to Databaseに設定します。
名前空間の追加とグローバル変数の宣言
この例では、Microsoft Accessデータベースを使用しているため、コードの先頭にSystem.Data.OleDb名前空間を追加します。
この名前空間で提供されているクラスを使用できます。
- グローバル変数を宣言します。
データベースからデータを取得してDataSetを埋める
サンプルデータベースに接続して、DataSetオブジェクトにデータを取得して埋めます。
- OleDbDataAdapterオブジェクトを使用してサンプルデータベースに接続し、データベースのProductsテーブルから取得したデータでDataSetを埋めます。以下のコードに示すように。
DataSetとWorksheetのバインディング
WorksheetをDataSetのProductsテーブルにバインドします:
- 任意のワークシートにアクセスします。
- ワークシートをDataSetのProductsテーブルにバインドします。
Bind Worksheetボタンのクリックイベントに以下のコードを追加します。
ワークシートの列見出しの設定
バインドされたワークシートはデータを正常に読み込みますが、列見出しはデフォルトでA、B、Cとラベル付けされています。データベーステーブルの列名に列見出しを設定するのがより良いでしょう。
ワークシートの列見出しを設定するには:
- DataSetのDataTable(Products)の各列のキャプションを取得します。
- キャプションをワークシートの列見出しに割り当てます。
Bind Worksheetボタンのクリックイベントに以下のコードスニペットを追加します。これにより、古い列見出し(A、B、C)はProductID、ProductName、ProductPriceで置き換えられます。
列の幅とスタイルのカスタマイズ
さらにワークシートの外観を改善するために、列の幅とスタイルを設定することができます。たとえば、列見出しや列内の値がセルに収まらない長い文字数で構成されている場合があります。このような問題を解決するために、Aspose.Cells.GridDesktopは列の幅を変更することをサポートしています。
Bind Worksheetボタンに以下のコードを追加します。列の幅は新しい設定に従ってカスタマイズされます。
Aspose.Cells.GridDesktopは列にカスタムスタイルを適用することもサポートしています。Bind Worksheetボタンに追加された以下のコードは、列のスタイルをカスタマイズして見栄えを向上させます。
アプリケーションを実行し、Bind Worksheetボタンをクリックします。
行の追加
ワークシートに新しい行を追加するには、WorksheetクラスのAddRowメソッドを使用します。これにより、空の行が一番下に追加され、新しいDataRowがデータソースに追加されます(ここでは、新しいDataRowがDataSetのDataTableに追加されます)。開発者は、AddRowメソッドを繰り返し呼び出すことで、必要なだけ多くの行を追加できます。行が追加された後、ユーザーはその行に値を入力することができます。
行の削除
Aspose.Cells.GridDesktopでは、WorksheetクラスのRemoveRowメソッドを呼び出すことで行を削除することもサポートされています。Aspose.Cells.GridDesktopを使用して行を削除するには、削除する行のインデックスが必要です。
上記のコードを行の削除ボタンに追加し、アプリケーションを実行します。行が削除される前にいくつかのレコードが表示されます。行を選択し、行の削除ボタンをクリックすると、選択した行が削除されます。
データベースへの変更の保存
最後に、ユーザーがワークシートに行った変更をデータベースに保存するには、OleDbDataAdapterオブジェクトのUpdateメソッドを使用します。Updateメソッドは、ワークシートのデータソース(DataSet、DataTableなど)を取り、それらの変更をデータベースに反映させます。
- 上記のコードをデータベースに更新ボタンに追加します。
- アプリケーションを実行します。
- ワークシートのデータに操作を行い、新しい行を追加したり、既存のデータを編集したり削除することがあります。
- 次にデータベースに更新をクリックして、変更をデータベースに保存します。
- テーブルのレコードが適切に更新されたかどうかを確認します。