C#

    技术2025-04-11  29

     

     

    -------------页面片段----------------------------

     

    <td>

                  <asp:Button ID="btnDetail" runat="server" Text="导出数据" CssClass="input" OnClick="btnDetail_Click" />

      </td>

     

    <div>

                <asp:GridView ID="GVdata" runat="server">

                </asp:GridView>

      </div>

     

    -------------------------后台 。aspx.cs文件----------------------------

     

    protected void btnDetail_Click(object sender, EventArgs e)

        {

    /**

            GetWhere(); 

            AllThings allThing = new AllThings();

            DataTable dt = allThing.GMAcountNoPage(iProId, iUserId, strUserName, strProFrom, state, dtBegin, dtEnd, strGroup, strGameName, strCause, iAcountNum, iGMId);

            if (null == dt || dt.Rows.Count == 0)

                return;

            this.GVdata.DataSource = dt;

            this.GVdata.DataBind();

    **/以上数据填充GridView ,可自己更换

     

            GetXLS("SumSorce");

        }

     

     

    protected void GetXLS(string xlsName)

        {

            StringBuilder sb = new StringBuilder();

            StringWriter sw = new StringWriter(sb);

            HtmlTextWriter htw = new HtmlTextWriter(sw);

     

            Page page = new Page();

            HtmlForm form = new HtmlForm();

     

            GVdata.EnableViewState = false;

     

            // Deshabilitar la validación de eventos, sólo asp.net 2

            page.EnableEventValidation = false;

     

            // Realiza las inicializaciones de la instancia de la clase Page que requieran los diseñadores RAD.

            page.DesignerInitialize();

     

            page.Controls.Add(form);

            form.Controls.Add(GVdata); //GVdata 页面 GridView

            page.RenderControl(htw);

            Response.Clear();

            Response.Buffer = true;

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

            Response.AddHeader("Content-Disposition", "attachment;filename=" + xlsName + ".xls");

            //Response.Charset = "utf-8";

            Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");

            Response.Write(sb.ToString());

            Response.End();

        }

     

    最新回复(0)