protected void btnExport_Click(object sender, EventArgs e) { dbModule dm = new dbModule(); string kcbh = KCDDL.SelectedValue; int syid= Convert.ToInt32(SYDDL.SelectedValue); DataTable dt = dm.getWxsyxsmd( kcbh ,syid ); GridView1.DataSource = dt; GridView1.DataBind(); GridView1.Caption = KCDDL.SelectedItem.Text + "---" + SYDDL.SelectedItem.Text + "未选实验学生名单"; string fileName = "export.xls"; System.Text.StringBuilder sb = new System.Text.StringBuilder(); System.IO.StringWriter sw = new System.IO.StringWriter(sb); HtmlTextWriter htw = new HtmlTextWriter(sw); Page page = new Page(); HtmlForm form = new HtmlForm(); // 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(GridView1); page.RenderControl(htw); Response.Clear(); Response.Buffer = true; Response.ContentType = "application/vnd.ms-excel"; Response.AddHeader("Content-Disposition", "attachment;filename=" + fileName); Response.Charset = "UTF-8"; Response.ContentEncoding = System.Text.Encoding.Default; Response.Write(sb.ToString()); Response.End(); }