C#:Datagrid 到 Excel .Cell 边框在创建的 excel 文件中丢失

Posted

技术标签:

【中文标题】C#:Datagrid 到 Excel .Cell 边框在创建的 excel 文件中丢失【英文标题】:C#: Datagrid to Excel .Cell border is missing in the created excel file 【发布时间】:2011-04-16 07:50:30 【问题描述】:

我正在尝试使用以下代码从我的 asp.net 页面中的 datagrid 创建一个 excel 文件。我能够创建 excel 文件。但是创建的 excel 文件没有单元格边框。没有单元格边框,它看起来像一个 word 文档。

我的代码是

        Response.Clear();
        Response.Buffer = true;
        Response.ContentType = "application/vnd.ms-excel";
        Response.AddHeader("content-disposition", "attachment;filename=asas.xls");
        Response.Charset = "";
        this.EnableViewState = false;
        System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
        System.Web.UI.htmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);
        this.ClearControls(dgShipping);
        dgShipping.AllowPaging = false;
        DisplayRecords();
        dgShipping.RenderControl(oHtmlTextWriter);
        Response.Write(oStringWriter.ToString());
        Response.End();
        dgShipping.AllowPaging = true;

有什么解决方法吗?感谢您的帮助

【问题讨论】:

您使用的是 xls 模板吗? 否。在这种情况下我为什么要使用模板? 您找到解决方案了吗? 【参考方案1】:

在“RenderControl”行之后添加以下2 Lines。它将解决您的问题并添加网格线。

string style = @"<style> TABLE  border: 1px solid red;  TD  border: 1px solid red;  </style> ";
Response.Write(style);

根据您的要求更改颜色和线条粗细。

【讨论】:

以上是关于C#:Datagrid 到 Excel .Cell 边框在创建的 excel 文件中丢失的主要内容,如果未能解决你的问题,请参考以下文章

c# excel 用npoi怎么获取cell的坐标

c#如何将html标签写入指定的excel中

有木有人知道 easyUI 的dataGrid的序号列怎么调整宽度?

C# 导出到Excel

当 SelectionMode 设置为 Cell 时,如何突出显示 WPF DataGrid 中的一行

如何有效地查询多个表以在 dataGrid 中生成 excel STYLE 报告