public void HtmlToWord(System.Web.UI.Control source) 
    { 
        //设置Http的头信息 
        Response.AppendHeader("Content-Disposition", "attachment;filename=result.doc"); 
        //指定类型为word 
        Response.ContentType = "application/ms-word"; 
        //编码格式 
        Response.Charset = "utf-8"; 
        Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312"); 
        //关闭控件的视图状态 
        source.Page.EnableViewState = false; 
        //初始化HtmlWriter,实现一个用于将信息写入字符串的 TextWriter。 
        StringWriter objWriter = new StringWriter(); 
        HtmlTextWriter ObjhtmlWriter = new HtmlTextWriter(objWriter);       source.RenderControl(ObjhtmlWriter);/////????? 
        //输出 
        Response.Write(objWriter.ToString()); 
        Response.End(); 
    } 
    protected void btnToWord_Click(object sender, EventArgs e) 
    { 
        HtmlToWord(this); 
    } 这段代码source.RenderControl(ObjhtmlWriter); 
为什么总报这样的错误:只能在执行 Render() 的过程中调用 RegisterForEventValidation; 

解决方案 »

  1.   

    加上这段,一百分全给我哦 public override void VerifyRenderingInServerForm(Control control)
            {
                //base.VerifyRenderingInServerForm(control);
            }
      

  2.   

     source.RenderControl(ObjhtmlWriter);/////????? 
    不要這一句
      

  3.   

    public override void VerifyRenderingInServerForm(Control control)
            {
                //base.VerifyRenderingInServerForm(control);
            }
    这段加哪?
      

  4.   

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" EnableEventValidation="false"%>在页面中加入  EnableEventValidation="false"  。把分给我哦
      

  5.   

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" EnableEventValidation="false"%> 和public override void VerifyRenderingInServerForm(Control control) 
            { 
                //base.VerifyRenderingInServerForm(control); 
            } 
    都要
      

  6.   

    public override void VerifyRenderingInServerForm(Control control) 
            { 
                //base.VerifyRenderingInServerForm(control); 
            } 重写这个方法可以在没有form的情况下提交!
    我也遇见过这样的问题!~
    加上就可以啦
      

  7.   


    加你方法下面就可以了,.不行就ASPX页头上加上 EnableEventValidation="false"