如何在wpf中从数据表导出到excel文件#

Ton*_*ony 7 c# wpf datatable excel export

我有一个数据表,并希望它将其导出到excel文件,它是一个wpf应用程序,我找到的所有解决方案都是针对Web应用程序asp.net请帮助...

den*_*nza 9

只是为了让所有人都能更好地看到它

Microsoft.Office.Interop.Excel.Application excel = null;
Microsoft.Office.Interop.Excel.Workbook wb = null;

object missing = Type.Missing;
Microsoft.Office.Interop.Excel.Worksheet ws = null;
Microsoft.Office.Interop.Excel.Range rng = null;      

try
{
    excel = new Microsoft.Office.Interop.Excel.Application();
    wb = excel.Workbooks.Add();
    ws = (Microsoft.Office.Interop.Excel.Worksheet)wb.ActiveSheet;

    for (int Idx = 0; Idx < dt.Columns.Count; Idx++)
    {
        ws.Range["A1"].Offset[0, Idx].Value = dt.Columns[Idx].ColumnName;
    }

    for (int Idx = 0; Idx < dt.Rows.Count; Idx++)
    {  // <small>hey! I did not invent this line of code, 
       // I found it somewhere on CodeProject.</small> 
       // <small>It works to add the whole row at once, pretty cool huh?</small>
       ws.Range["A2"].Offset[Idx].Resize[1, dt.Columns.Count].Value = 
       dt.Rows[Idx].ItemArray;
    }

    excel.Visible = true;
    wb.Activate();
}
catch (COMException ex)
{
    MessageBox.Show("Error accessing Excel: " + ex.ToString());
}
catch (Exception ex)
{
    MessageBox.Show("Error: " + ex.ToString());
}
Run Code Online (Sandbox Code Playgroud)