Импорт данных из DataTable в сетку

Contents
[ ]

Пример

Для импорта содержимого таблицы данных с использованием элемента управления Aspose.Cells.GridDesktop:

  1. Добавить элемент управления Aspose.Cells.GridDesktop на форму.
  2. Создать объект DataTable, содержащий данные для импорта.
  3. Получите ссылку на нужный лист.
  4. Импортировать содержимое таблицы данных на лист.
  5. Установить заголовки столбцов на листе в соответствии с именами столбцов таблицы данных.
  6. Установить ширину столбцов, при необходимости.
  7. Отобразить лист.

В приведенном ниже примере мы создали объект DataTable и заполнили его данными, полученными из таблицы базы данных с названием Products. Наконец, мы импортировали данные из этого объекта DataTable на нужный лист, используя Aspose.Cells.GridDesktop.

// 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;