ASP.NET AJAX 1.0 中怎么实现将GridView控件中的数据导出到Excel

ASP.NET AJAX 1.0 中如何实现将GridView控件中的数据导出到Excel?
在   ASP.NET   2.0   中将GridView控件中的数据导出到Excel的代码运行无误,但在ASP.NET   AJAX   1.0中就出错,如何解决这个问题?
以下是将GridView中的数据导出到Excel的代码:  
protected   void   Button8_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);  
this.GridView1.RenderControl(oHtmlTextWriter);  
Response.Output.Write(oStringWriter.ToString());  
Response.Flush();  
Response.End();  
}  
public   override   void   VerifyRenderingInServerForm(Control   control)  
{   }
在ASP.NET2.0框架中当用GridView导出Execl的时候,会发生只能在执行   Render()   的过程中调用   RegisterForEventValidation的错误提示。  
有两种方法可以解决以上问题:  
1.修改web.config(不推荐) <pages   enableEventValidation   = "false "   > </pages>  
2.直接在导出Execl的页面修改  


<%@   Page   Language= "C# "   EnableEventValidation   =   "false "   AutoEventWireup= "true "   CodeFile= "ExportGridView.aspx.cs "   Inherits= "ExportGridView "   %>  


------解决方案--------------------
不能用Response()这个方法。用ScriptManager.RegisterClientScriptBlock()等方法代替看看
------解决方案--------------------
把 Button 放到UpdatePanel 外邊就可以了 。