Gratter ma tête à ce sujet. Dans le HTML rendu pour le code ci-dessous, le btnEdit (dans le GridView) a le Javascript correct dans le paramètre onclick (onclick = "javascript: WebForm_DoPostBack ..."). Le btnAddNew n'a aucun gestionnaire onclick. Pourquoi? Il n'y a pas d'erreur de compilation ou de l'exécution, et la page utilise une page principale qui a la balise form ..PostbackUrl et le paramètre de chaîne de requête
<ContentTemplate>
<asp:ImageButton ID="btnAddNew" SkinID="btnAddNew" runat="server"
PostBackUrl='<%# "EditUser.aspx?action="+Constants.actionAdd %>' />
<asp:GridView ID="UserGridView"
runat="server"
DataKeyNames="UserId"
>
<Columns>
<asp:TemplateField
<ItemTemplate>
<asp:ImageButton id="btnEdit" SkinID="btnEdit" runat="server"
PostBackUrl='<%# Eval("UserId", "EditUser.aspx?
action="+Constants.actionEdit+"&uid={0}") %>' />
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
Vérifiez si le PostBackUrl est intact dans la page restituée. Si tel est le cas, le contrôle asp: ImageButton n'a pas de propriété PostBackUrl. –