DataTableからグリッドにデータをインポートする
Contents
[
Hide
]
.NET Frameworkのリリース以来、MicrosoftはDataTableオブジェクトの形式でデータをオフラインモードで保存する優れた方法を提供してきました。開発者のニーズを理解して、Aspose.Cells.GridDesktopもデータテーブルからデータをインポートする機能をサポートしています。このトピックでは、これを行う方法について説明します。
例
Aspose.Cells.GridDesktopコントロールを使用してデータテーブルの内容をインポートするには:
- フォームにAspose.Cells.GridDesktopコントロールを追加します。
- インポートされるデータを含むDataTableオブジェクトを作成します。
- 所望のワークシートの参照を取得します。
- データテーブルの内容をワークシートにインポートします。
- データテーブルの列名に応じてワークシートの列ヘッダーを設定します。
- 必要に応じて列の幅を設定します。
- ワークシートを表示します。
以下の例では、DataTableオブジェクトを作成し、データベーステーブル「Products」から取得したいくつかのデータでそれを埋めました。最後に、そのDataTableオブジェクトからデータを希望のワークシートにインポートしました。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = Utils.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
OleDbDataAdapter adapter; | |
DataTable dt = new DataTable(); | |
// Creating connection string to connect with database | |
string conStr = @"Provider=microsoft.jet.oledb.4.0;Data Source=" + dataDir + "dbDatabase.mdb"; | |
// Creating Select query to fetch data from database | |
string query = "SELECT * FROM Products ORDER BY ProductID"; | |
adapter = new OleDbDataAdapter(query, conStr); | |
// Filling DataTable using an already created OleDbDataAdapter object | |
adapter.Fill(dt); | |
// Accessing the reference of a worksheet | |
Worksheet sheet = gridDesktop1.Worksheets[0]; | |
// Importing data from DataTable to the worksheet. 0,0 specifies to start importing data from the cell with first row (0 index) and first column (0 index) | |
sheet.ImportDataTable(dt, false, 0, 0); | |
// Iterating through the number of columns contained in the DataTable | |
for (int i = 0; i < dt.Columns.Count; i++) | |
{ | |
// Setting the column headers of the worksheet according to column names of the DataTable | |
sheet.Columns[i].Header = dt.Columns[i].Caption; | |
} | |
// Setting the widths of the columns of the worksheet | |
sheet.Columns[0].Width = 240; | |
sheet.Columns[1].Width = 160; | |
sheet.Columns[2].Width = 160; | |
sheet.Columns[3].Width = 100; | |
// Displaying the contents of the worksheet by making it active | |
gridDesktop1.ActiveSheetIndex = 0; |