【发布时间】:2018-01-15 14:44:58
【问题描述】:
我有一个用 DevExpress 从我的程序中创建的 excel 文件。我需要在这个文件中添加水平分页,但我不能,因为我的 DevExpress 版本不能处理它。所以我在一个单独的类中使用 OpenXML 来检索生成的 excel 文件,以便将其添加到水平断页。
为了在单独的工作表上打印每个选项卡。
所以我使用 openXML 中的 PageSetup 来定义我的 excel 文件的宽度和高度:
private void InsertPageBreaks()
{
//uint columnIndex = 17U;
uint rowIndex = 42;
SpreadsheetDocument sd = SpreadsheetDocument.Open("c:\\temp\\ExcelExport1.xlsx", true);
try
{
WorkbookPart workbookPart = sd.WorkbookPart;
WorksheetPart worksheetPart = workbookPart.WorksheetParts.Last();
// Uncomment the following line to insert row page breaks.
InsertHorizontalPageBreak(rowIndex, worksheetPart);
PageSetup pageSetup = new PageSetup() {FitToHeight = 2, FitToWidth = 1};
worksheetPart.Worksheet.AppendChild(pageSetup);
}
finally
{
if (sd != null)
((IDisposable)sd).Dispose();
}
}
但在处理后,当我尝试打开文件时,会显示错误“抱歉,我们发现某些内容存在问题 [...]”。
你们知道如何帮助我吗?
非常感谢!
【问题讨论】: