使用Spreadsheetlight.SLFill.SetPattern时缺少方法异常

时间:2019-06-15 12:39:49

标签: c# spreadsheetlight

当使用方法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)'。'

1 个答案:

答案 0 :(得分: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)
        {

        }
}