私はこのグリッドビューを持っていますが、その中のボタンの何が問題なのかわかりません。私はこのaspコードを持っています:
<asp:GridView ID="gvList" runat="server">
<Columns>
<asp:TemplateField HeaderText="User Name" HeaderStyle-ForeColor="Black" HeaderStyle-Font-Bold="true">
<ItemTemplate>
<asp:Label runat="server" ID="lblUsername" Text='<%# Eval("cUserName") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Dept User" HeaderStyle-ForeColor="Black" HeaderStyle-Font-Bold="true">
<ItemTemplate>
<asp:Label runat="server" ID="lblDept" Text='<%# iif(Eval("lDeptUser"),"Yes","No") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Actions" HeaderStyle-ForeColor="black" HeaderStyle-Font-Bold="true">
<ItemTemplate>
<asp:Button ID="btnedit" runat="server" Text="Edit" />
<asp:Button ID="btnDelete" OnClick="DeleteRow" runat="server" Text="Delete" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
そして、任意の行で削除または編集を押すと、エラーが発生します!!Invalid postback or callback argument.
これはvb.netのサーバー側コードです。
Public Function GetList() As DataTable
Dim Query As String = "Select cUserName,lDeptUser FROM Intranet.dbo.Gn_ISCoordinators"
Dim dt As DataTable = New DataTable()
Using adapter = New SqlDataAdapter(Query, ConfigurationManager.ConnectionStrings("IntranetConnectionString").ConnectionString)
adapter.Fill(dt)
gvList.DataSource = dt
gvList.DataBind()
Return dt
End Using
End Function
Public Function DelRow() As DataTable
Dim strusername As String = CType(gvList.FindControl("lblUsername"), Label).Text.Trim()
Dim Query As String = "Delete FROM Intranet.dbo.Gn_ISCoordinators where cUserName='" & strusername & "'"
Dim dt As DataTable = New DataTable()
Using Adapter = New SqlDataAdapter(Query, ConfigurationManager.ConnectionStrings("IntranetConnectionString").ConnectionString)
Adapter.Fill(dt)
Return dt
End Using
End Function
Protected Sub DeleteRow(ByVal sender As Object, ByVal e As System.EventArgs)
DelRow()
End Sub
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
GetList()
End Sub
Protected Sub gv(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvList.RowDataBound
e.Row.Cells(3).Visible = False
e.Row.Cells(4).Visible = False
End Sub
End Class
クライアント側からだと思います。この問題で私を助けてください。ところで、私は今までajaxtoolkitを使用しておらずEnableEventValidation="true"
、ページとweb.configにあります
問題とその解決策は何ですか、私を助けてください。
前もって感謝します。