拖了一个GridView 控件 id="gridview1"<Columns>
<asp:CommandField ButtonType="Button" ShowDeleteButton="True" ShowEditButton="True" ShowSelectButton="True"/>
</Columns>增加了一 个编辑,取消,更新 的功能按钮现在“编辑”按钮后,可以是正确的 
==========代码====
Protected Sub GridView1_RowEditing(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GridView1.RowEditing
        GridView1.EditIndex = e.NewEditIndex 
        TextBox1.Text = GridView1.Rows(e.NewEditIndex).Cells(1).Text.ToString
        Call gridview1_databind()    End Sub
=========================
“取消”也是正确的
== 代码 =========
Protected Sub GridView1_RowCancelingEdit(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCancelEditEventArgs) Handles GridView1.RowCancelingEdit        GridView1.EditIndex = -1
        Call gridview1_databind()End Sub
========================但是在点“更新”时就出错了 Protected Sub GridView1_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GridView1.RowUpdating    End Sub错误信息为:“/001”应用程序中的服务器错误。
--------------------------------------------------------------------------------回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.ArgumentException: 回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。源错误: 执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。 是我有说明地方没有设置吗?
还是我弄错了?严重谢谢,刚开始接触asp.net的东西 ,还请各位多多关照,谢谢

解决方案 »

  1.   

    呵呵
    这种问题在做GridView更新时很常见呦
    都是由于在页面载入时:
    对了,你的GridView1数据绑定的代码是放在什么位置的?
    应该放在
     if (!IsPostBack)
     {
        BindGraid();
     }
    你试试看看,行不行??
    判回复!!
      

  2.   

    Public Sub gridview1_databind()
            str_sql = "select * from partd"
            apter = New OleDbDataAdapter(str_sql, conn)
            apter.Fill(ds)
            GridView1.DataSource = ds.Tables(0).DefaultView 
            GridView1.DataBind()
            ds.Clear() 
        End Sub
    在 page_load 的时候
    调用这个函数
      

  3.   

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
            conn = re_class.re_conn
            conn.Open()
            If IsPostBack = False Then  
                gridview1_databind()
            End If  
        End Sub这样就解决了,我在测试下,等下就给分哈,很快测试完!