从Silverlight打开新的Excel工作表

时间:2012-03-22 06:43:55

标签: silverlight

我创建Silverlight应用程序,在将网格导出到Excel时,我需要打开一个新的Excel工作表,但我无法在silverlight中打开一个新的Excel。我正在使用Telerik控件,在他们的示例中,他们正在保存一个新的Excel,然后输出数据。但是我的客户端不需要在导出Grid数据之前执行保存操作。 流程应如下所示: 1.打开新的Excel(Excel应该在屏幕前面) 2.出口数据 3.保存excel是最终用户的选择。

最终用户可能会也可能不会根据需要保存Excel表格。

任何人都可以帮我解决这个问题。

谢谢

2 个答案:

答案 0 :(得分:1)

    private void button8_Click(object sender, RoutedEventArgs e)
    {
        dynamic excelApp;
        excelApp = AutomationFactory.CreateObject("Excel.Application");
        excelApp.Visible = true;
        dynamic workbook = excelApp.workbooks;
        workbook.Add();
        dynamic sheet = excelApp.ActiveSheet;
        dynamic cell = null;
        int index = 1;
        foreach (unite emp in dataGrid1.ItemsSource)
        {
            cell = sheet.Cells[index, 1];
            cell.Value = emp.unite_description;
            cell = sheet.Cells[index, 2];
            //cell.Value = emp.EmployeeId;
            //cell = sheet.Cells[index, 3];
            //cell.Value = emp.Department;
            index++;
        }
     }

当我遇到与你相同的问题时,我发现这就是你所要求的。 (可能不需要将变量声明为动态)

答案 1 :(得分:0)

使用excellite库。它是一个适用于读取和写入Excel文件的免费工具。 你可以听到:http://excellite.codeplex.com/