将gridview导出为具有多个页面的excel。 [英] Export gridview to excel that has multiple pages.

查看:66
本文介绍了将gridview导出为具有多个页面的excel。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个从我的SQL数据库绑定数据的gridview。数据太多,无法在Web屏幕上一次查看所有内容,因此我允许它在网格视图中进行分页。在我这样做之前,我有一个按钮,可以将gridview导出为ex​​cel格式,我可以将其打开并查看我的所有数据。现在我启用了分页,我导出gridview它只导出gridview的第一页而不是整个东西。有没有办法我可以导出gridview与所有页面而不将gridview更改回其原始状态?



I have a gridview that is data-bound from my SQL database. The data is too much to view all at once on the Web screen so I allowed it to page the gridview. Before I did this I have a button that can export the gridview to excel format and I can open it up and see all of my data. Now I have the paging enabled and I export the gridview it only exports that first page of the gridview and not the whole thing. Is there a way I can export the gridview with all the pages without changing the gridview back to its original state?

protected void ButtonExcel_Click(object sender, EventArgs e)
{
    <pre>Response.Clear();
    Response.Buffer = true;
    Response.AddHeader("content-disposition", "attachment;filename=FINSubmitted.xls");
    Response.Charset = "";
    Response.ContentType = "application/vnd.ms-excel";
    System.IO.StringWriter sw = new System.IO.StringWriter();
    HtmlTextWriter hw = new HtmlTextWriter(sw);
    GridView2.RenderControl(hw);
    string style = @"<style> .textmode { } </style>";
    Response.Write(style);
    Response.Output.Write(sw.ToString());
    Response.Flush();
    Response.End();
}





我尝试过:



我试图改变Gridview.Allowpaging = false;



What I have tried:

I have tried to changed the Gridview.Allowpaging = false;

推荐答案

尝试创建一个新的Gridview对象

try creating a new Gridview object
protected void ButtonExcel_Click(object sender, EventArgs e)
       {
           Response.Clear();
           Response.Buffer = true;
           Response.AddHeader("content-disposition", "attachment;filename=FTESubmitted.xls");
           Response.Charset = "";
           Response.ContentType = "application/vnd.ms-excel";
           System.IO.StringWriter sw = new System.IO.StringWriter();
           HtmlTextWriter hw = new HtmlTextWriter(sw);
           GridView GridviewExcel = new GridView();
           GridviewExcel.AllowPaging = false;
           GridviewExcel.DataSource = yourSource;
           GridviewExcel.RenderControl(hw);
           string style = @"<style> .textmode { } </style>";
           Response.Write(style);
           Response.Output.Write(sw.ToString());
           Response.Flush();
           Response.End();
       }


protected void ButtonExcel_Click(object sender, EventArgs e)
        {

            Response.Clear();
            Response.Buffer = true;
            Response.AddHeader("content-disposition", "attachment;filename=FINSubmitted.xls");
            Response.Charset = "";
            Response.ContentType = "application/vnd.ms-excel";
            System.IO.StringWriter sw = new System.IO.StringWriter();
            HtmlTextWriter hw = new HtmlTextWriter(sw);
            GridView2.AllowPaging = false;
            GridView2.DataBind();
            GridView2.RenderControl(hw);
            string style = @"<style> .textmode { } </style>";
            Response.Write(style);
            Response.Output.Write(sw.ToString());
            Response.Flush();
            Response.End();
        }


这篇关于将gridview导出为具有多个页面的excel。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆