asp.net 导出Excel

    技术2022-05-19  18

      public partial class ImportExcel : System.Web.UI.Page

        {

            protected void Page_Load(object sender, EventArgs e)

            {

                if (!this.IsPostBack)

                {

                    this.bindGridView();

                }

            }

     

            //绑定GridView

            private void bindGridView()

            {

                SqlConnection con = DB.createCon();

                con.Open();

                try

                {

                    string strsql = "select id as '编号',bm_bm as '部门',bm_ry as '姓名',bm_sf as '职位',staff_id as '工号' from kq_bm";

                    SqlDataAdapter da = new SqlDataAdapter(strsql, con);

                    DataSet ds = new DataSet();

                    da.Fill(ds);

                    this.GridView1.DataSource = ds;

                    this.GridView1.DataBind();

                }

                catch(Exception ee)

                {

                    Response.Write(ee.Message);

                }

                finally

                {

                    con.Close();

                }

            }

     

            //GridView分页

            protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)

            {

                this.GridView1.PageIndex = e.NewPageIndex;

                this.bindGridView();

            }

     

            //必须重载此方法,才能实现excel导出。

            public override void VerifyRenderingInServerForm(Control control)

            {

            }

     

            protected void btnExportExcel_Click(object sender, EventArgs e)

            {

                Response.Charset = "UTF-8";

                Response.ContentType = "application/vnd.ms-excel";

                this.EnableViewState = false;

                StringWriter sw = new StringWriter();

                HtmlTextWriter htw = new HtmlTextWriter(sw);

     

                int Cur = this.GridView1.PageIndex;

                int Size = this.GridView1.PageSize;

                this.GridView1.AllowPaging = false;

                this.bindGridView();

                this.GridView1.RenderControl(htw);

     

                this.GridView1.AllowPaging = true;

                this.GridView1.PageIndex = Cur;

                this.GridView1.PageSize = Size;

                this.bindGridView();

     

                Response.Write(sw.ToString());

                Response.End();

            }

        }


    最新回复(0)