Импорт данных из DataTable в сетку
Пример
Для импорта содержимого таблицы данных с использованием элемента управления Aspose.Cells.GridDesktop:
- Добавить элемент управления Aspose.Cells.GridDesktop на форму.
- Создать объект DataTable, содержащий данные для импорта.
- Получите ссылку на нужный лист.
- Импортировать содержимое таблицы данных на лист.
- Установить заголовки столбцов на листе в соответствии с именами столбцов таблицы данных.
- Установить ширину столбцов, при необходимости.
- Отобразить лист.
В приведенном ниже примере мы создали объект 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; |