代码如下:
style = (HSSFCellStyle)workbook.CreateCellStyle();
font = (HSSFFont)workbook.CreateFont();
font.FontName = "MS Pゴシック";
font.FontHeightInPoints = 24;
font.Color = NPOI.HSSF.Util.HSSFColor.BLACK.index;
font.Boldweight = (short)FontBoldWeight.BOLD;
style.Alignment = HorizontalAlignment.CENTER; // 没有居中
style.SetFont(font);
style.FillBackgroundColor = NPOI.HSSF.Util.HSSFColor.PINK.index; // 背景颜色没有
HSSFCell cell = (HSSFCell)row.CreateCell(startCol);
cell.SetCellValue(text);
cell.CellStyle = style;
CellRangeAddress r = new CellRangeAddress(startRow, endRow, startCol, endCol);
sheet.AddMergedRegion(r);
请问如和设定合并单元格的背景颜色和对齐方式?
穷人,钱少,跪求~~~~~~~~~~~~~~~~~~~
变态的NPOI,原来那个不叫背景颜色,叫做FillForegroundColor,而且还要设置FillPattern才行。
代码如下:
style.FillPattern = FillPatternType.SOLID_FOREGROUND;
style.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.PINK.index;
谢谢,困惑的问题解决了
这个还是得你自己跟着慢慢调试,一步一步的跟着调试,单纯看是看不出来问题的,而且大家也没时间构建一个环境。
headStyle.FillPattern = HSSFCellStyle.SOLID_FOREGROUND;// FillPatternType.SOLID_FOREGROUND;
headStyle.FillForegroundColor = NPOI.HSSF.Util.HSSFColor.PINK.index;
这么才对。
我也是,折腾了一晚上加一上午,才找到这个解决方法!唯一不解的是,为什么我再网上看到的帖子,都是你这种格式,而我的开发环境中,是:
ncellstyle0.FillForegroundColor = HSSFColor.Red.Index;
ncellstyle0.FillPattern = FillPattern.SolidForeground;
就是 HSSFColor后面颜色的枚举,以及后面的 index ,我这里都是首字母大写的呢?下面的SolidForeground,也不是SOLID_FOREGROUND。
有人能解惑么?
因为NPOI是开源项目,不同的版本,函数名、变量名都可能会有差异的
遇到同样问题,解决了,赞!!!