C# devexpress多个gridview在单文件winforms中导出到excel
搜索并找到以下解决方案 用户已经放弃投票,但这给我带来了一个例外 MultiFileExportToExcel无法将类型为“DevExpress.XtraGrid.Views.Grid.GridView”的对象强制转换为类型为“DevExpress.XtraPrinting.IPrintable”。 无法将类型为“DevExpress.XtraGrid.Views.Grid.GridView”的对象强制转换为类型为“DevExpress.XtraPrinting.IPrintable” 完整代码如下:C# devexpress多个gridview在单文件winforms中导出到excel,c#,vb.net,export-to-excel,xtragrid,devexpress-windows-ui,C#,Vb.net,Export To Excel,Xtragrid,Devexpress Windows Ui,搜索并找到以下解决方案 用户已经放弃投票,但这给我带来了一个例外 MultiFileExportToExcel无法将类型为“DevExpress.XtraGrid.Views.Grid.GridView”的对象强制转换为类型为“DevExpress.XtraPrinting.IPrintable”。 无法将类型为“DevExpress.XtraGrid.Views.Grid.GridView”的对象强制转换为类型为“DevExpress.XtraPrinting.IPrintable” 完整代码
Public Sub MultiFileExportToExcel()
Using saveDialog = New SaveFileDialog()
saveDialog.Filter = "Excel (.xlsx)|*.xlsx"
If saveDialog.ShowDialog() = DialogResult.OK Then
Dim printingSystem = New PrintingSystemBase()
Dim compositeLink = New CompositeLinkBase()
compositeLink.PrintingSystemBase = printingSystem
Dim link1 = New PrintableComponentLinkBase()
link1.Component = CType(GridView1, IPrintable)
Dim link2 = New PrintableComponentLinkBase()
link2.Component = CType(GridView2, IPrintable)
compositeLink.Links.Add(link1)
compositeLink.Links.Add(link2)
Dim options = New XlsxExportOptions()
options.ExportMode = XlsxExportMode.SingleFilePageByPage
compositeLink.CreatePageForEachLink()
compositeLink.ExportToXlsx(saveDialog.FileName, options)
End If
End Using
End Sub
提前感谢。
CType(GridView1,IPrintable)
是我猜测的错误。看看这个解决方案,我认为您应该使用GridView1
。这是解决方案代码<代码>link1.Component=grid1代码>如您所见,没有强制转换。出现了相同的错误。为了确保,您同时更改了link1.Component=GridView1
和link2.Component=GridView2
?是的,我已更改。就是这样。谢谢你,成功了。我浪费了2到3个小时去寻找解决方案。由此可见,我对编码还不熟悉:)