如何格式化导出到Excel的DataGridView的背景?

时间:2019-01-09 11:12:44

标签: c# excel winforms

我想在Excel中格式化标题单元格的背景,该背景通过我的Datagridview填充。我已经尝试过

ws.Cells[1. 2].Style.Fill.PatternType = ExcelFillStyle.Solid;

ws.Cells[1, 2].Style.Fill.BackgroundColor.SetColor(Color.LightGray);

但是我收到一条错误消息,提示名称ExcelFillStyle.Solid在当前上下文中不存在。有什么想法吗?

谢谢

1 个答案:

答案 0 :(得分:0)

首先欢迎新贡献者的身份加入SO社区!

做一些研究,我建议使用以下方式更改 GridView 标题颜色

_dataGridView.ColumnHeadersDefaultCellStyle.BackColor = Color.Blue;
_dataGridView.EnableHeadersVisualStyles = false;

这是在 SO 上找到的: SO - How to change the color of dataGridView header

但是,如果您想使用一种更自定义的方法来解决此问题,可以设置特定单元格(项目)的背景颜色,则可以使用以下方法完成:

DataGridView1.CurrentCell = DataGridView1.Item("ColumnName", 5)

columnHeadingsRange.Interior.Color = XlRgbColor.rgbSkyBlue;

此处的用例在 SO 上说明:

Focus-a-specific-cell

Cell-color-changing-in-excel-using-c-sharp

使用这两个资源应该可以帮助您实现所需的目标,因为这两个资源均已得到回答