1

当使用方法 object.Fill.SetPattern(...) 尝试将一些背景颜色应用于使用 Spreadsheetlight 创建的 excel 文件时,会抛出 MissingMethodException,我无法理解原因

我试图在开发人员文档中查找可能存在的问题,但找不到解决方案

using (SLDocument sl = new SLDocument())
        {
            sl.ImportDataTable("A1", dataTable, true);

            var style = sl.CreateStyle();
            style.Fill.SetPattern(PatternValues.Solid, SLThemeColorIndexValues.Accent2Color, SLThemeColorIndexValues.Accent4Color);

            sl.SetCellStyle("A1:Z1", style);

            sl.SaveAs(fileName);
        }

我希望 excel 文件中的第一行,范围 A1:Z1,有一些背景颜色。

以下是例外情况:

System.MissingMethodException:'找不到方法:'Void SpreadsheetLight.SLFill.SetPattern(DocumentFormat.OpenXml.Spreadsheet.PatternValues,SpreadsheetLight.SLThemeColorIndexValues,SpreadsheetLight.SLThemeColorIndexValues)'。

4

1 回答 1

1

我已经运行了你的代码,没有看到任何错误,这就是我所拥有的

public void CreateDocument(DataTable dataTable )
{
   try
        {
            dataTable.Clear();
            dataTable.Columns.Add("Name");
            dataTable.Columns.Add("Marks");
            DataRow _ravi = dataTable.NewRow();
            _ravi["Name"] = "ravi";
            _ravi["Marks"] = "500";
            dataTable.Rows.Add(_ravi);

            using (SLDocument sl = new SLDocument())
            {                  
                sl.ImportDataTable("A1", dataTable, true);

                var style = sl.CreateStyle();
                //PatternValues.Solid, 
                style.Fill.SetPattern(PatternValues.Solid, SLThemeColorIndexValues.Accent2Color, SLThemeColorIndexValues.Accent4Color);


                sl.SetCellStyle("A1:Z1", style);



                sl.SaveAs("Test.xlsx");
            }
        }
        catch (MissingMethodException ex)
        {

        }
}
于 2019-06-15T13:14:11.760 回答