如何使用 openXml 为特定单元格添加颜色?

How to add color to a specific cell using openXml?

我创建了这样的行和单元格 =

行 Row1 = new Row() { RowIndex = 1 };

            Row1.AppendChild(new Cell()
            {
                CellReference = "A1",
                DataType = CellValues.String,
                CellValue = new CellValue("Color this")
            });

谁能告诉我如何在 C# 中使用 openXml 为这个特定的单元格着色?我不想为所有单元格着色,只为这个特定的单元格着色。

找到解决方案 = https://docs.microsoft.com/en-us/archive/blogs/chrisquon/stylizing-your-excel-worksheets-with-open-xml-2-0

您需要创建一个 PatternFill for that and set its background- or foregroundcolor. Then you will need to create a CellFormat 来引用该 PatternFill。然后将单元格的 StyleIndex 设置为该 CellFormat-index。

处理 OpenXML 中的样式是一件很痛苦的事情。除非你有充分的理由坚持使用 OpenXML,否则我的建议是切换到 ClosedXML.

之类的东西