Je peux définir la couleur d'arrière-plan d'une cellule ou d'une plage de cellules comme suit:
rowRngprogramParamsRange.Style.Fill.PatternType = ExcelFillStyle.Solid;
rowRngprogramParamsRange.Style.Fill.BackgroundColor.SetColor(Color.DarkRed);
Cependant, je n'ai pas pu définir la couleur de la police. J'ai essayé ceci:
rowRngprogramParamsRange.Style.Font.Color = Color.Red;
... qui n'a pas pu être compilé avec deux messages d'erreur: le premier, que je ne peux pas attribuer System.Drawing.Color à OfficeOpenXml.Style.ExcelColor, et le second que la propriété est de toute façon en lecture seule.
Juste pour sourire et supporter son, j'ai essayé de lancer la valeur:
rowRngprogramParamsRange.Style.Font.Color = (OfficeOpenXml.Style.ExcelColor)Color.Red;
... et je reçois maintenant, " Impossible de convertir le type 'System.Drawing.Color' en 'OfficeOpenXml.Style.ExcelColor' "
Presque tout dans EPPlus est assez facile, certainement plus facile qu'Excel Interop, mais celui-ci m'a dérouté. Comment attribue-t-on une couleur à une police pour une plage dans EPPlus?
Il est prudent de supposer que Style.Fill.BackgroundColor
Et Style.Font.Color
Sont tous les deux de type ExcelColor
, utilisez donc simplement la même méthode SetColor()
que vous avez utilisée pour définir la couleur d'arrière-plan.
rowRngprogramParamsRange.Style.Font.Color.SetColor(Color.Red);