从 Devexpress 中的 Master Detail GridView 导出到 Excel 所有详细信息

Export to Excel all details from Master Detail GridView in Devexpress

我有 2 个 GridView,它们之间有主从关系。现在,当我选择了一行时,我可以通过这样做导出到 excel Gridview 的详细信息:

GridView2.ExportToXlsx("OneMasterDetail.xlsx")

但我想做的是从主 GridView 中导出所有可能的详细信息。我试过以下但它只是导出当前选择的主细节。

GridView2.OptionsPrint.PrintDetails = True
GridView2.OptionsPrint.ExpandAllDetails = True
GridView2.ExportToXlsx("AllMasterDetail.xlsx")

只是为了确保我说清楚了。假设我有一个包含汽车品牌的 Master GridView,以及为您提供该品牌汽车可用的汽车颜色的细节 GridView。最后的 Excel 将包含所有汽车品牌及其所有可用颜色。

我遇到了同样的问题。似乎 Grid View 的本机导出功能有点过于原始,无法选择各种选项并进行更多的直接转储。如果你想完成你想要的,你需要使用 DevExpress XtraPrinting 库:

using DevExpress.XtraPrinting;

我不知道 VB.net,但我希望你能将我的 C# 翻译成你需要的。这将实现您想要的结果:

using (PrintableComponentLink link = new PrintableComponentLink(new PrintingSystem()))
{
    link.Component = GridControl2;
    link.CreateDocument(link.PrintingSystem);
    link.ExportToXlsx("AllMasterDetail.xlsx");
}

这也是必要的,例如,如果您希望输出为横向而不是纵向。

--编辑--截图

UI:

导出的电子表格:

1.Devexpress 从 VB.net

中的 Master Detail GridView 导出到 Excel 所有详细信息
DevExpress.Export.ExportSettings.DefaultExportType = DevExpress.Export.ExportType.WYSIWYG
GridControl1.ExportToXlsx(.FileName)