为什么 EPPlus 告诉我"当我设置图案类型时无法设置颜色"?



我有这样的代码来尝试设计标题行的样式:

worksheet.Cells["A32:D32"].Style.Font.Name = "Georgia";
worksheet.Cells["A32:D32"].Style.Font.Bold = true;
worksheet.Cells["A32:D32"].Style.Font.Size = 16;
worksheet.Cells["A32:D32"].Style.Fill.PatternType = ExcelFillStyle.Solid;
worksheet.Cells["A32:D33"].Style.Fill.BackgroundColor.SetColor(Color.CornflowerBlue);

它在上面的最后一行失败,返回"System.ArgumentException未处理…Message=未设置模式类型时无法设置颜色。来源=EPPlus"

真正的问题可能是什么?我正在做它声称我没有做的事,对吧?

更多上下文:

worksheet.Cells["A32"].LoadFromCollection(bookDataList, true);
// style header row
worksheet.Cells["A32:D32"].Style.Font.Name = "Georgia";
worksheet.Cells["A32:D32"].Style.Font.Bold = true;
worksheet.Cells["A32:D32"].Style.Font.Size = 16;
worksheet.Cells["A32:D32"].Style.Fill.PatternType = ExcelFillStyle.Solid;
worksheet.Cells["A32:D33"].Style.Fill.BackgroundColor.SetColor(Color.CornflowerBlue);
// style the rest
worksheet.Cells["A33:D59"].Style.Font.Name = "Candara";
worksheet.Cells["A33:D59"].Style.Fill.PatternType = ExcelFillStyle.Solid;
worksheet.Cells["A33:D59"].Style.Fill.BackgroundColor.SetColor(Color.Cornsilk);

请注意,在添加"样式头行"之前,我有"样式其余部分"代码,没有遇到这个问题。代码与设置PatternType和BackgroundColor完全相同(除了使用的颜色和应用代码的单元格范围)。

仔细观察两行:

worksheet.Cells["A32:D32"].Style.Fill.PatternType = ExcelFillStyle.Solid;
worksheet.Cells["A32:D33"].Style.Fill.BackgroundColor.SetColor(Color.CornflowerBlue);

第二行有D33而不是D32,因此如果尚未设置D33,则会引发该错误。

相关内容

  • 没有找到相关文章

最新更新