gpt4 book ai didi

c# - 无法设置 FillBackgroundColor

转载 作者:太空狗 更新时间:2023-10-30 00:04:50 24 4
gpt4 key购买 nike

我在 C# 项目中使用 NPOI 2.0.6.0,但在更改样式时遇到了困难。虽然我可以影响字体和单元格边框,但我无法更改背景颜色。

private void buildSheet(HSSFWorkbook wb, DataTable data, string sheetName)
{
var cHelp = wb.GetCreationHelper();
var sheet = wb.CreateSheet(sheetName);

HSSFFont hFont = (HSSFFont)wb.CreateFont();

hFont.Boldweight = (short)FontBoldWeight.Bold;
hFont.Color = HSSFColor.White.Index;
hFont.FontHeightInPoints = 18;

HSSFCellStyle hStyle = (HSSFCellStyle)wb.CreateCellStyle();
hStyle.SetFont(hFont);
hStyle.BorderBottom = BorderStyle.Medium;
hStyle.FillBackgroundColor = HSSFColor.Black.Index;

IRow headerRow = sheet.CreateRow(1);


int cellCount = 1;
foreach (string str in colHeaders)
{
HSSFCell cell = (HSSFCell)headerRow.CreateCell(cellCount);
cell.SetCellValue(cHelp.CreateRichTextString((str)));
cell.CellStyle = hStyle;

cellCount += 1;
}

int rowCount = 2;
foreach (DataRow dr in data.Rows)
{
var row = sheet.CreateRow(rowCount);
for (int i = 1; i < data.Columns.Count + 1; i++)
{
row.CreateCell(i).SetCellValue(cHelp.CreateRichTextString((dr[i - 1]).ToString()));
}
rowCount += 1;
}
}

附加调试器后,我注意到 hStyle.FillBackgroundColor 从未从 0x0040 改变,尽管黑色的索引是 8。

所以本质上问题是:

  • 为什么 HSSFCellStyle.FillBackgroundColor 不可修改?

最佳答案

如果不指定 FillPattern,则无法应用 FillBackgroundcolor

        hStyle = (HSSFCellStyle)workBook.CreateCellStyle();
hStyle.SetFont(xFont);
hStyle.BorderBottom = BorderStyle.Medium;
hStyle.FillForegroundColor = IndexedColors.Black.Index;
hStyle.FillPattern = FillPattern.SolidForeground;

关于c# - 无法设置 FillBackgroundColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27323839/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com