为什么为单元格设置颜色不起作用(Aspose Cells)?
Why does setting a color to a cell not work (Aspose Cells)?
我有这段代码来尝试设置单元格的背景颜色(除其他外):
private static readonly Color CONTRACT_ITEM_COLOR = Color.FromArgb(255, 255, 204);
. . .
cell = pivotTableSheet.Cells[4, 0];
cell.PutValue(AnnualContractProductsLabel);
style = cell.GetStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.VerticalAlignment = TextAlignmentType.Center;
style.Font.IsBold = true;
pivotTableSheet.Cells.SetRowHeight(4, 25);
style.BackgroundColor = CONTRACT_ITEM_COLOR;
pivotTableSheet.Cells[4, 0].SetStyle(style);
水平和垂直对齐设置有效,粗体和高度也有效 - 除颜色外的所有内容:
还需要什么?我什至尝试将 ForegroundColor 和背景颜色设置为 :
style.ForegroundColor = Color.Red;
style.BackgroundColor = Color.Blue;
...但什么也没做 - 单元格看起来仍然与上面的屏幕截图完全相同。
请将您的代码段更改为(请参阅突出显示的行):
例如
示例代码:
. . .
cell = pivotTableSheet.Cells[4, 0];
cell.PutValue(AnnualContractProductsLabel);
style = cell.GetStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.VerticalAlignment = TextAlignmentType.Center;
style.Font.IsBold = true;
pivotTableSheet.Cells.SetRowHeight(4, 25);
**style.ForegroundColor = CONTRACT_ITEM_COLOR;
style.Pattern = BackgroundType.Solid;**
pivotTableSheet.Cells[4, 0].SetStyle(style);
........
它应该可以正常工作。
我在 Aspose 担任支持开发人员/传播者。
有时设置背景有效,有时无效。 Aspose 充满了错误——ClosedXML 更可靠但更难使用。希望我不会把钱花在第三方在第三世界国家开发的产品上。
var cells = worksheet.Cells; //get cells collection from active worksheet <br>
var srcCells = workbook.Worksheets[1].Cells;<br>
for (int i = 0; i<rowCount; i++)<br>
{<br>
var srcStyle = srcCells[i, 0].GetStyle();<br>
var destStyle = cells[i, 0].GetStyle();<br>
destStyle.Pattern = BackgroundType.Solid;<br>
destStyle.ForegroundColor = Color.FromArgb(srcStyle.ForegroundArgbColor);<br>
cells[i, 0].SetStyle(destStyle);<br>
}<br>
以上代码无效。 srcStyle 前景色 argb 为 170,215,255.
调试代码 destStyle ForegroundColor 设置为 170,215,255 但当保存为 xlsx 时所有单元格背景都是白色的。
在 ClosedXML 代码中,以下代码可以完美运行
worksheet.Row(i).Cell(0).Style.BackgroundColor = Color.FromArgb(argb)
结论:节省 $$$$$ 并使用 ClosedXML
我有这段代码来尝试设置单元格的背景颜色(除其他外):
private static readonly Color CONTRACT_ITEM_COLOR = Color.FromArgb(255, 255, 204);
. . .
cell = pivotTableSheet.Cells[4, 0];
cell.PutValue(AnnualContractProductsLabel);
style = cell.GetStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.VerticalAlignment = TextAlignmentType.Center;
style.Font.IsBold = true;
pivotTableSheet.Cells.SetRowHeight(4, 25);
style.BackgroundColor = CONTRACT_ITEM_COLOR;
pivotTableSheet.Cells[4, 0].SetStyle(style);
水平和垂直对齐设置有效,粗体和高度也有效 - 除颜色外的所有内容:
还需要什么?我什至尝试将 ForegroundColor 和背景颜色设置为 :
style.ForegroundColor = Color.Red;
style.BackgroundColor = Color.Blue;
...但什么也没做 - 单元格看起来仍然与上面的屏幕截图完全相同。
请将您的代码段更改为(请参阅突出显示的行): 例如 示例代码:
. . .
cell = pivotTableSheet.Cells[4, 0];
cell.PutValue(AnnualContractProductsLabel);
style = cell.GetStyle();
style.HorizontalAlignment = TextAlignmentType.Center;
style.VerticalAlignment = TextAlignmentType.Center;
style.Font.IsBold = true;
pivotTableSheet.Cells.SetRowHeight(4, 25);
**style.ForegroundColor = CONTRACT_ITEM_COLOR;
style.Pattern = BackgroundType.Solid;**
pivotTableSheet.Cells[4, 0].SetStyle(style);
........
它应该可以正常工作。
我在 Aspose 担任支持开发人员/传播者。
有时设置背景有效,有时无效。 Aspose 充满了错误——ClosedXML 更可靠但更难使用。希望我不会把钱花在第三方在第三世界国家开发的产品上。
var cells = worksheet.Cells; //get cells collection from active worksheet <br>
var srcCells = workbook.Worksheets[1].Cells;<br>
for (int i = 0; i<rowCount; i++)<br>
{<br>
var srcStyle = srcCells[i, 0].GetStyle();<br>
var destStyle = cells[i, 0].GetStyle();<br>
destStyle.Pattern = BackgroundType.Solid;<br>
destStyle.ForegroundColor = Color.FromArgb(srcStyle.ForegroundArgbColor);<br>
cells[i, 0].SetStyle(destStyle);<br>
}<br>
以上代码无效。 srcStyle 前景色 argb 为 170,215,255.
调试代码 destStyle ForegroundColor 设置为 170,215,255 但当保存为 xlsx 时所有单元格背景都是白色的。
在 ClosedXML 代码中,以下代码可以完美运行
worksheet.Row(i).Cell(0).Style.BackgroundColor = Color.FromArgb(argb)
结论:节省 $$$$$ 并使用 ClosedXML