【问题标题】:ClosedXML New Workbook Styles All SheetsClosedXML 新工作簿样式 所有工作表
【发布时间】:2017-07-07 18:39:51
【问题描述】:

我刚刚开始使用 ClosedXML。当我使用下面的代码创建一个新工作簿时,它会自动将“蓝色,表格样式灯 9”应用于每个工作表。我不希望工作表上有任何样式。如何不指定样式?

XLWorkbook wb = new XLWorkbook();
wb.Worksheets.Add(dt, "sheet1");

我基本上只是用 SQL 数据表填写表格。

【问题讨论】:

    标签: c# closedxml


    【解决方案1】:

    默认情况下,当您使用IXLWorksheets.Add(DataTable dt) 方法时,ClosedXML 将创建一个新的Excel table。 Excel 表格始终应用样式。

    要使用不带任何样式的 DataTable 填充您的工作表,请使用以下代码:

    using (var wb = new XLWorkbook())
    {
        var ws = wb.Worksheets.Add("sheet1");
        // The false parameter indicates that a table should not be created:
        ws.FirstCell().InsertTable(dt, false);
    }
    

    【讨论】:

    • 很高兴得到其中一位作者的回答!
    【解决方案2】:

    XLWorkbookXLWorksheet 都具有 Style 属性。您可以像这样修改样式:

    var workbook = new XLWorkbook();
    var ws = workbook.Worksheets.Add("Style Worksheet");
    
    ws.Style.Font.Bold = true;
    ws.Style.Font.FontColor = XLColor.Red;
    ws.Style.Fill.BackgroundColor = XLColor.Cyan;
    

    有关文档,请参见此处:https://github.com/ClosedXML/ClosedXML/wiki/Using-Default-Styles

    【讨论】:

    • 是的,我看到了所有这些。所以你说没有格式的唯一方法是将背景设置为白色,将字体颜色设置为黑色???我并不是说那是错误的……它以任意风格开始似乎很奇怪。除非您明确选择一个,否则它似乎没有样式。
    • 我认为自动选择样式的表格看起来不错。如果您不喜欢它,是的,您必须明确删除它。
    • 我不介意长相……但报告的接受者似乎相当特别。令人惊奇的是,我们必须如何取悦他人。哈哈!感谢您的回答!
    【解决方案3】:

    要添加不带主题的 dt,请使用以下代码:

    var ws = wb.Worksheets.Add("SheetName");
    ws.FirstCell().InsertTable.InsertTable(dt).Theme = XLTableTheme.None;;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多