0

我在silverlight 4 应用程序上有一个数据网格,我试图通过在silverlight 中调用Excel 的COM 组件来导出到excel。它不断出错并告诉我不支持该功能。我不能完全弄清楚出了什么问题,并相信我的代码是可靠的,但显然不是。

Private Sub Button2_Click(sender As System.Object, e As System.Windows.RoutedEventArgs)

        Dim excel As Object = AutomationFactory.CreateObject("Excel.Application")

        excel.visible = True

        Dim workbook As Object = excel.workbooks

        workbook.add()

    Dim sheet As Object = excel.activesheet
    Dim cell As Object = Nothing
    Dim i As Integer = 1

    'populate the excel sheet
    For Each item In ActivityTypeCountDataGrid.ItemsSource

        cell = sheet.cells(i, 1)
        cell.Value = item.Activity_Type
        cell.ColumnWidth = 50

        cell = sheet.cells(i, 2)
        cell.Value = item.Activity_Type_Count
        cell.ColumnWidth = 50

        i += 1
    Next item



End Sub

这是数据网格 数据网格

这是错误 错误

4

1 回答 1

2

你有两个选择。

1) 将此应用程序转换为 Silverlight OOB 应用程序。

2) 将数据传递给 WCF 服务。让服务创建 Excel 工作簿。将文件(以 、 等形式)传递byte[]IEnumerable<byte>Silverlight 应用程序,并提示用户使用SaveFileDialog.

于 2012-05-04T18:53:59.757 回答