// 使用控件的RenderControl()方法生成HTML表格 string strName = " HuaMingCe " ; Response.Clear(); Response.Buffer = true ; Response.Charset = " utf-8 " ; Response.AppendHeader( " Content-Disposition " , " attachment;filename= " + strName + " .xls " ); Response.ContentEncoding = System.Text.Encoding.GetEncoding( " utf-8 " ); // 设置输出流为简体中文 Response.ContentType = " application/ms-excel " ; // 设置输出文件类型为excel文件。 this .EnableViewState = false ; System.Globalization.CultureInfo myCItrad = new System.Globalization.CultureInfo( " ZH-CN " , true ); System.IO.StringWriter oStringWriter = new System.IO.StringWriter(myCItrad); System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter); if (GridViewMaster != null ) // GridViewMaster 是GridView控件 { GridViewMaster.RenderControl(oHtmlTextWriter);//将服务器控件的内容输出 } Response.Write(oStringWriter.ToString()); Response.End(); // 同时vs2005会报错“类型“ExGridView”的控件“GridViewMaster”必须放在具有 runat=server 的窗体标记内 ” // 需要添加下面取消对GridViewMaster 控件验证的方法 public override void VerifyRenderingInServerForm(Control control) { if (!control.GetType().Equals(GridViewMaster.GetType())) { base.VerifyRenderingInServerForm(control); } }