页面(图表+table+GridView)导出为excel



  protected void Button3_Click(object sender, EventArgs e)
        {
            Response.Clear();
            Response.Buffer 
= true;
            Response.Charset 
= "GB2312";
            Response.AppendHeader(
"Content-Disposition""attachment;filename=FileName.xls");
            
// 如果设置为 GetEncoding("GB2312");导出的文件将会出现乱码!!!
            Response.ContentEncoding = System.Text.Encoding.UTF7;
            Response.ContentType 
= "application/ms-excel";//设置输出文件类型为excel文件。 
            
            System.IO.StringWriter oStringWriter 
= new System.IO.StringWriter();
            System.Web.UI.HtmlTextWriter oHtmlTextWriter 
= new System.Web.UI.HtmlTextWriter(oStringWriter);
  
            
string imagePath = Server.MapPath(this.DaxonTechChartWeb1.ImagePath) + "\\" + this.DaxonTechChartWeb1.ID + "." + this.DaxonTechChartWeb1.ImageType.ToString();
            oHtmlTextWriter.AddAttribute(HtmlTextWriterAttribute.Src, imagePath);
           

            tableExcel.RenderControl(oHtmlTextWriter);
            Response.Output.Write(oStringWriter.ToString());
    
            Response.Flush();
            Response.End();
      
       
        }

gridview:
    protected void Button_toExcel_Click(object sender, EventArgs e)
    {
        Response.Clear();
        Response.Buffer 
= true;
        Response.Charset 
= "GB2312";
        Response.AppendHeader(
"Content-Disposition""attachment;filename=FileName.xls");
        
// 如果设置为 GetEncoding("GB2312");导出的文件将会出现乱码!!!
        Response.ContentEncoding = System.Text.Encoding.UTF7;
        Response.ContentType 
= "application/ms-excel";//设置输出文件类型为excel文件。 
        System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
        System.Web.UI.HtmlTextWriter oHtmlTextWriter 
= new System.Web.UI.HtmlTextWriter(oStringWriter);
       
//  turn off paging 
       
        GridView1.AllowPaging 
= false;
        GridView1.Columns[
0].Visible = false;
        GridView1.DataBind(); 
        GridView1.RenderControl(oHtmlTextWriter);
        Response.Output.Write(oStringWriter.ToString());
        Response.Flush();
        Response.End();
        
// turn the paging on again 
        GridView1.AllowPaging = true;
        GridView1.DataBind();

    }
posted on 2008-01-30 18:17  敌后武工队  阅读(345)  评论(0编辑  收藏  举报