AddHandler sur un ImageButton dans un GridView
Bonjour,
j'ai un GridView :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <asp:GridView ID="gvPCUser" runat="server" AllowSorting="True" AutoGenerateColumns="false" CssClass="BorderStyle"
DataSourceID="dsPCUser" CellPadding="3" EmptyDataText="<%$Resources:Lassonde, NoRecord %>" Width="100%">
<HeaderStyle CssClass="Header8n" />
<AlternatingRowStyle CssClass="DataText8n2" />
<RowStyle CssClass="DataText8n1" />
<EmptyDataRowStyle CssClass="Header8n" />
<Columns >
<asp:BoundField HeaderText="# PC" DataField="no_PC" ItemStyle-HorizontalAlign="center" SortExpression="no_PC" />
<asp:TemplateField ShowHeader="True">
<ItemTemplate>
<asp:ImageButton runat="server" ID="test"
ImageUrl="~/Images/trash.gif" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView> |
Et sur mon image de poubelle j'aimerais obtenir l'événement Click donc je fais :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
Protected Sub gvPCUser_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gvPCUser.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.Cells(1).HasControls = True Then
Test = e.Row.Cells(1).Controls(1)
AddHandler Test.Click, AddressOf DeletePcUser_Click
End If
End If
End Sub
Sub DeletePcUser_Click(ByVal sender As Object, ByVal e As ImageClickEventArgs)
Response.Write("Record Effacé")
End Sub |
Mais j'obtiens le message d'erreur suivant:
Argument de publication ou de rappel non valide. La validation d'événement est activée via <pages enableEventValidation="true"/> dans la configuration ou via <%@ Page EnableEventValidation="true" %> dans une page. Pour des raisons de sécurité, cette fonctionnalité vérifie si les arguments des événements de publication ou de rappel proviennent du contrôle serveur qui les a rendus à l'origine. Si les données sont valides et attendues, utilisez la méthode ClientScriptManager.RegisterForEventValidation afin d'inscrire les données de publication ou de rappel pour la validation
Est-ce que quelqu'un saurait m'expliquer ce que je fais d'incorect!!!
Merci d'avance