列值自定义 - 在ASP.NET中导出Excel

时间:2011-04-11 13:22:57

标签: c# asp.net excel gridview export

我必须将gridview导出到Excel工作表2003.使用我的代码我可以直接将数据导出到eXcel Sheet。但是如果列的值为空,那么如何在Excel工作表中替换为空字符串。有一个null列的日期列,是否在导出按钮单击和将数据加载到excel之间发生任何事件处理程序。如果有,我可以比较数据库中的值,并可以用空字符串替换空值。在evnt处理程序中。

请指出我正确的方向。

谢谢

1 个答案:

答案 0 :(得分:1)

单击导出按钮,您可以遍历网格行并替换所需的任何内容。例如,下面的代码会将:替换为.

protected void btnExport_Click(object sender, EventArgs e)
{
    StringWriter sw = new StringWriter();
    HtmlTextWriter htw = new HtmlTextWriter(sw);

    string attachment = "attachment; filename=SummaryReport" + DateTime.Now.ToString() + ".xls";

    Response.ClearContent();
    Response.AddHeader("content-disposition", attachment);
    Response.ContentType = "application/ms-excel";

    foreach (GridViewRow grdRow in grdProjectTasks.Rows)
    {
        Label lblActualDuration = (Label)grdRow.FindControl("lblActualDuration");

        lblActualDuration.Text = lblActualDuration.Text.Replace(":", ".");
    }

    grdProjectTasks.RenderControl(htw);

    Response.Write(sw.ToString());
    Response.End();
}