大侠们帮帮忙:
gridview导出EXCLE报错 
只能在执行 Render() 的过程中调用 RegisterForEventValidation
在网上查有两种解决办法 一种是改webconfig另一种就是修改当前页的EnableEventValidation="false"
我现在的问题是使用的母版页,不想修改webconfig,想问一下有没有别的解决办法,产生这种异常的原因是什么?

解决方案 »

  1.   

    你是用 RenderControl 的方法导出的吗?
    如果是,你可以在 CS 文件中加入下面的这个空方法就可以public override void VerifyRenderingInServerForm(Control control)
    {
    }
      

  2.   

    是我加了这个方法。还是在页面文件EnableEventValidation="false"才可以的
    有没有别的方法,导出excel. 
      

  3.   

    在模版页 写这个:
               //事件验证。
            public override bool EnableEventValidation
            {
                get
                {
                    if (IsGetExcel)
                    {
                        return false;
                    }
                    else
                    {
                        return base.EnableEventValidation;
                    }
                }
                set
                {
                    base.EnableEventValidation = value;
                }
            }        //打印Excel
            public bool IsGetExcel = false; 在要打印的页面只要设置 IsGetExcel=true; 就可以
      

  4.   

    1#3#正解 这一个帖子里看过 出现这种情况的原因可能是GRIDVIEW自身的问题 结贴