我在winform C#中的DataGridView中创建了一个Shift Roster。 This是我从DataGridView导出的excel表截图。
我需要将DataGridView导出为Excel Sheet,同时保持字体颜色和背景颜色,我也不想将DataGridView的第一列导出为不可见的excel。
我使用以下代码将DataGridView导出到Excel。
using (ExcelPackage pck = new ExcelPackage(file))
{
// Add a new worksheet to the empty workbook
ExcelWorksheet ws = pck.Workbook.Worksheets.Add("Sheet1");
// Load data from DataTable to the worksheet
ws.Cells["A1"].LoadFromDataTable(((DataTable)gvShift.DataSource), true);
ws.Cells.AutoFitColumns();
// Add some styling
using (ExcelRange rng = ws.Cells[1, 1, 1, gvShift.Columns.Count])
{
rng.Style.Font.Bold = true;
rng.Style.Fill.PatternType = ExcelFillStyle.Solid;
rng.Style.Fill.BackgroundColor.SetColor(System.Drawing.Color.FromArgb(79, 129, 189));
rng.Style.Font.Color.SetColor(System.Drawing.Color.White);
}
请帮助请....
答案 0 :(得分:0)
你可以使用cells.interior.color
Range range =
oSheet.get_Range("A" + redRows.ToString(), "J"
+ redRows.ToString());
range.Cells.Interior.Color = System.Drawing.Color.Red;
答案 1 :(得分:0)
我得到了解决方案,我只是通过我设置颜色的源,将每个单元格或DataGridView放入循环和范围,应用颜色。
感谢所有人的帮助