Ошибка экспорта данных из DataGrid в Excel | C# WPF + SQL
Данные хранятся в бд SQL и выводятся в DataGrid
using Microsoft.Office.Interop.Excel;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Controls;
namespace kyrsa4
{
class ExcelExportSheet
{
public ExcelExportSheet(DataGrid dataGrid, DateTime dt)
{
Application excel = new Application();
excel.Visible = true;
Worksheet sheet1 = excel.Workbooks.Add(Missing.Value).Sheets[1];
sheet1.Range["A1:F1"].Merge();
sheet1.Range["A2:F2"].Merge();
string title = "Пример";
sheet1.Range["A1:F1"].Value = title;
sheet1.Range["A1:F1"].Font.Bold = true;
sheet1.Range["A2:F2"].Value = dt.ToShortDateString();
for(int j=0; j<dataGrid.Columns.Count; j++)
{
Range myRange = (Range)sheet1.Cells[4, j + 1];
myRange.Font.Bold = true;
string header = dataGrid.Columns[j].Header.ToString();
sheet1.Columns[j + 1].ColumnWidth = header.Length + 5;
myRange.Value2 = header;
}
for (int j = 0; j < dataGrid.Items.Count; j++)
{
var item = dataGrid.Items[j] as ClientsmfcEntities11;
sheet1.Cells[j + 5, 1].Value = item.Client;
}
}
}
}
private void Button_Click_7(object sender, RoutedEventArgs e)
{
ExcelExportSheet export = new ExcelExportSheet(dg2, DateTime.Now);
}
При этом в Excel файле пишутся имена столбцов без данных
Источник: Stack Overflow на русском