如何在Excel中设置单元格背景图案和颜色

使用 IronXL 在 C# 中设置单元格背景图案和颜色

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronXl.Excel 可让您用 C# 编程自定义 Excel 单元格背景的图案和颜色。 使用简单的 API 调用设置对角线交叉线等可视化模式并应用颜色,以增强电子表格的可视化效果。

快速入门:自定义 Excel 背景图案和颜色

使用 IronXl.Excel 通过自定义背景图案和颜色来增强您的 Excel 电子表格。 本快速指南演示如何为单元格设置对角交叉阴影图案和海绿色背景色。 使用 IronXL 简单易用的 API,您可以快速提高数据的视觉吸引力,而无需依赖 Interop。

  1. 使用 NuGet 包管理器安装 https://www.nuget.org/packages/IronXL.Excel

    PM > Install-Package IronXL.Excel
  2. 复制并运行这段代码。

    var workbook = IronXl.Excel.Workbook.Load("example.xlsx");
    var sheet = workbook.Worksheets[0];
    sheet["A1"].Style.FillPattern = IronXl.Styles.FillPattern.DiagonalCrosshatch;
    sheet["A1"].Style.BackgroundColor = IronXl.Styles.Colors.SeaGreen;
    workbook.SaveAs("styled_example.xlsx");
  3. 部署到您的生产环境中进行测试

    通过免费试用立即在您的项目中开始使用IronXL

    arrow pointer


如何在 IronXL 中设置单元格背景图案和颜色?

要为选定的单元格、列、行或范围设置背景图案,请使用 FillPattern 属性以及 IronXl.Styles.FillPattern 枚举之一。 然后,使用 SetBackgroundColor 方法或设置 BackgroundColor 属性来应用所需的颜色。 从 Color 类中选择颜色,或输入十六进制颜色代码。 例如,SeaGreen 的颜色代码是"#FFF5EE"。

背景图案和颜色功能可与边框和字体等其他单元格样式功能无缝配合。 在使用条件格式化时,您可以结合图案和颜色为数据创建复杂的可视化指标。

目前无法更改填充图案的颜色。

哪些属性控制背景样式?

IronXL中用于控制背景样式的两个主要属性是 FillPatternBackgroundColorFillPattern 属性接受来自 IronXl.Styles.FillPattern 枚举的值,而 BackgroundColor 可以通过 SetBackgroundColor 方法和 Color 对象进行设置,也可以通过直接将十六进制颜色代码字符串分配给 BackgroundColor 属性来设置。

:path=/static-assets/excel/content-code-examples/how-to/background-pattern-color-set-background-pattern-color.cs
using IronXL;
using IronXL.Styles;
using IronSoftware.Drawing;

WorkBook workBook = WorkBook.Create();
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Set background pattern
workSheet["A1"].Style.FillPattern = FillPattern.AltBars;
workSheet["A2"].Style.FillPattern = FillPattern.ThickVerticalBands;

// Set background color
workSheet["A1"].Style.SetBackgroundColor(Color.Aquamarine);
workSheet["A2"].Style.BackgroundColor = "#ADFF2F";

workBook.SaveAs("setBackgroundPattern.xlsx");
$vbLabelText   $csharpLabel

SetBackgroundColor 和 BackgroundColor 属性有何不同?

SetBackgroundColor 方法和 BackgroundColor 属性都能达到相同的结果,但提供了不同的方法。 SetBackgroundColor 方法接受来自 IronSoftware.Drawing 命名空间的 Color 对象,提供对预定义颜色名称和 RGB 值的访问。 BackgroundColor 属性接受十六进制颜色代码作为字符串,在需要特定颜色值时提供精确性。 选择最适合您工作流程的方法——使用 SetBackgroundColor 表示命名颜色,使用 BackgroundColor 表示十六进制值。

电子表格单元格 A1-A2 显示应用了纯绿色填充和绿色条纹背景图案

我可以同时对多个单元格应用模式吗?

是的,您可以使用 范围选择对多个单元格同时应用图案和颜色。 这种方法在格式化大型数据集或在电子表格中创建一致的视觉主题时特别有用。 以下是如何对整行、整列或自定义范围应用模式:

using IronXL;
using IronXl.Styles;
using IronSoftware.Drawing;

WorkBook workBook = WorkBook.Load("data.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Apply pattern to entire column
workSheet.GetColumn(0).Style.FillPattern = FillPattern.LightGrid;
workSheet.GetColumn(0).Style.SetBackgroundColor(Color.LightBlue);

// Apply pattern to entire row
workSheet.GetRow(0).Style.FillPattern = FillPattern.DarkHorizontal;
workSheet.GetRow(0).Style.BackgroundColor = "#F0F0F0";

// Apply pattern to custom range
var range = workSheet["B2:D5"];
range.Style.FillPattern = FillPattern.ThinDiagonalStripe;
range.Style.SetBackgroundColor(Color.PaleGreen);

workBook.SaveAs("formatted_data.xlsx");
using IronXL;
using IronXl.Styles;
using IronSoftware.Drawing;

WorkBook workBook = WorkBook.Load("data.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Apply pattern to entire column
workSheet.GetColumn(0).Style.FillPattern = FillPattern.LightGrid;
workSheet.GetColumn(0).Style.SetBackgroundColor(Color.LightBlue);

// Apply pattern to entire row
workSheet.GetRow(0).Style.FillPattern = FillPattern.DarkHorizontal;
workSheet.GetRow(0).Style.BackgroundColor = "#F0F0F0";

// Apply pattern to custom range
var range = workSheet["B2:D5"];
range.Style.FillPattern = FillPattern.ThinDiagonalStripe;
range.Style.SetBackgroundColor(Color.PaleGreen);

workBook.SaveAs("formatted_data.xlsx");
$vbLabelText   $csharpLabel

IronXL 中有哪些填充模式?

使用 IronXl.Styles.FillPattern 枚举中的可用填充图案,在 Excel 表格中设置所需的填充图案。 下图展示了IronXL提供的所有填充图案:

我的数据应使用哪种填充模式?

选择正确的填充模式取决于您的数据可视化需求。 对于突出显示重要标题或总计,实线图案(DiagonalCrosshatch)则非常适合指示计算值或衍生值。 点图案(SparseDots)可以巧妙地区分交替行,从而提高可读性。 在创建报告导出数据时,请考虑受众的打印能力--一些复杂的图案可能无法在所有打印机上很好地再现。

图表显示了 19 种填充图案的名称和视觉示例,包括点、线、对角线和几何图形

填充模式如何影响可读性?

填充模式会严重影响电子表格的可读性。 类似 ThinHorizontalBandsThinVerticalBands 的浅色图案可以改善行跟踪,而不会使数据过载。 应少用密集模式,通常用于分隔行或特殊部分。 在使用公式和计算时,应避免使用使文本难以阅读的模式。 考虑颜色对比度--深色图案需要浅色文本颜色,您可以使用 字体样式选项进行调整。

我可以创建自定义填充模式吗?

目前, IronXL通过 FillPattern 枚举提供了 19 种预定义的填充模式。 虽然不直接支持自定义图案创建,但您可以通过将图案与策略性的颜色选择和 单元边框相结合来实现独特的视觉效果。 对于高级可视化需求,可考虑将模式与 条件格式化结合使用,以创建动态、数据驱动的可视化指标。 当导入包含在 Excel 中创建的自定义模式的 Excel 文件时,IronXl.Excel 将尽可能保留这些模式。

对于复杂的报告要求,您可以将背景模式与 合并单元格 添加图片等其他格式化功能相结合,创建外观专业的电子表格,有效传达您的数据见解。

常见问题解答

如何在 C# 中为 Excel 单元格应用背景图案?

通过 IronXL.Excel,您可以使用 FillPattern 属性将背景图案应用到 Excel 单元格。只需选择单元格、列、行或区域,然后将 FillPattern 属性设置为 IronXl.Styles.FillPattern 枚举中的可用图案之一,如 DiagonalCrosshatch。

我可以同时设置背景图案和颜色吗?

是的,IronXL 允许您同时设置背景图案和颜色。首先将 FillPattern 属性设置为所需的图案,然后使用 SetBackgroundColor 方法或 BackgroundColor 属性应用从 Color 类中选择的颜色或十六进制颜色代码。

Excel 单元格有哪些背景图案?

IronXL 通过 IronXl.Styles.FillPattern 枚举提供各种填充模式,包括 DiagonalCrosshatch 等选项和其他标准 Excel 模式。这些图案可应用于单元格、列、行或区域,以增强视觉效果。

如何为单元格背景指定自定义颜色?

IronXL 提供两种指定自定义颜色的方法:您可以使用 SetBackgroundColor 方法从系统颜色中指定一个颜色对象(如 Colors.SeaGreen),或者直接为 BackgroundColor 属性指定一个十六进制颜色代码字符串(如 '#FFF5EE' 表示 SeaGreen)。

这种方法需要 Microsoft Office Interop 吗?

不,IronXL 可独立工作,无需 Microsoft Office Interop。您可以用 C# 编程设置背景图案和颜色,而无需在机器上安装 Excel,因此它非常适合服务器环境。

背景样式能否与其他单元格格式化功能相结合?

是的,IronXL 的背景图案和颜色功能可与边框、字体和条件格式化等其他单元格样式功能无缝配合。这样,您就可以创建复杂的可视化指标,增强电子表格的整体外观。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。

准备开始了吗?
Nuget 下载 1,913,565 | 版本: 2026.3 刚刚发布
Still Scrolling Icon

还在滚动吗?

想快速获得证据? PM > Install-Package IronXL.Excel
运行示例 观看您的数据变成电子表格。