1
Answer

Exports gridview and prints it in excel

Photo of djamel zahal

djamel zahal

13y
1.5k
1
I'm exporting a gridView into excel file.  


it is exported well but the problem is that i have 30 pages when i want to print instead of 19 pages.  


i debugged and in my content, i dont see blanc or br at the end..this problem is visible only for printing.  


thank you for help.

Answers (1)

0
Photo of Hermes Condez
NA 32 0 13y

try this one, though I didn't test this on printing the exported XLS

protected void ExportToXls_Click(object sender, EventArgs e) //On click Event of a control (button/link button/hyperlink)
 {

        this.DataGridView1.AllowPaging = false;

        ExportGridViewToExcel(Response, this.DataGridView1, "Exported.xls");
 }

 public void ExportGridViewToExcel(HttpResponse response, GridView gvControl, string fileName)
        {
            string attachment = "";
            System.IO.StringWriter sw = new System.IO.StringWriter();
            HtmlTextWriter htw = new HtmlTextWriter(sw);
            response.AddHeader("content-disposition", "attachment; filename=" + fileName);
            response.ClearContent();
            response.AddHeader("content-disposition", attachment);
            gvControl.AllowPaging = false;
            gvControl.DataBind();
            gvControl.RenderControl(htw);
            response.Write(sw.ToString());
            response.Flush();
            response.End();

            gvControl.AllowPaging = true;
        }

 public override void VerifyRenderingInServerForm(Control control) // I just got this in forum just
           // add this. I don't why but it will work if this is added
        {
        }