问题描述
你好,请问利用Appose.cells.dll。怎么实现excel指每行定的颜色?比如:这个下面是某个单元格设置颜色,但是没有效果vars=cells[1,1l].GetStyle();s.ForegroundColor=Color.FromArgb(255,255,153,204);s.Font.IsBold=true;cells[startRow,startCol].SetStyle(s);发现字体确实是变粗了,但是颜色好像设置的没有效果?
解决方案
解决方案二:
---不好意思,写错了,这个是对的你好,请问利用Appose.cells.dll。怎么实现excel指定每行的背景颜色?比如:这个下面是某个单元格设置背景颜色,但是没有效果vars=cells[1,1l].GetStyle();s.ForegroundColor=Color.FromArgb(255,255,153,204);s.Font.IsBold=true;cells[1,1].SetStyle(s);发现字体确实是变粗了,但是背景颜色好像设置的没有效果?for(inti=0;i<dt.Rows.Count;i++){startCol=0;for(intj=0;j<dt.Columns.Count;j++){DataRowdr=dt.Rows[i];cells[startRow,startCol].PutValue(dr[j]);//cells[startRow,startCol].SetStyle(style);if(j==dt.Columns.Count-1)//themaxcolumn{vars=cells[startRow,startCol].GetStyle();stringcellsMaxColumnText=cells[startRow,startCol].StringValue.ToString();if(cellsMaxColumnText=="0"){//s.ForegroundColor=Color.Pink;s.ForegroundColor=Color.FromArgb(255,255,153,204);s.Font.IsBold=true;//s.ForegroundColor=System.Drawing.Color.FromArgb(153,204,0);}elseif(cellsMaxColumnText=="1"){//s.ForegroundColor=Color.Yellow;s.ForegroundColor=Color.FromArgb(255,255,255,0);//s.ForegroundColor=System.Drawing.Color.FromArgb(153,204,0);}elseif(cellsMaxColumnText=="2"){//s.ForegroundColor=Color.LightSkyBlue;s.ForegroundColor=Color.FromArgb(255,0,204,255);//s.ForegroundColor=System.Drawing.Color.FromArgb(153,204,0);}cells[startRow,startCol].SetStyle(s);//cells[startRow,startCol].PutValue("");}startCol++;}startRow++;}
解决方案三:
解决方案四:
不要用FromArgb(255,255,153,204),具体制定颜色给它试试。
解决方案五:
excel里面的颜色其实是个枚举并不是你传入任何颜色都能显示出来