public bool SetBackColor(int Row, int Col, byte[] Color)
{
ICell cell = sheet.GetRow(Row).GetCell(Col); //获取单元格控制权
XSSFCellStyle style;
if (dic.ContainsKey(Color[0].ToString() + Color[1].ToString() + Color[2].ToString()))
{
style = dic[Color[0].ToString() + Color[1].ToString() + Color[2].ToString()];
}
else
{
style = (XSSFCellStyle)work.CreateCellStyle();//创建一个空的单元格格式
style.FillForegroundColor = 0;
style.FillPattern = FillPattern.SolidForeground;
style.FillForegroundColorColor = new XSSFColor(Color);
dic.Add(Color[0].ToString() + Color[1].ToString() + Color[2].ToString(), style);
}
cell.CellStyle = style;
}
为什么 style.FillForegroundColorColor = new XSSFColor(Color) 的赋值会越来越慢。原来几毫秒,跑了几百遍,最后变成一两百毫秒。这是为什么,这不是简单的赋值吗?