Ciao a tutti,
io devo fare un repeater con delle imagebutton e al click mi deve far partire un comando ajax.
Ecco il codice che ho:
Lato aspx
codice:<asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Repeater ID="lstphoto" runat="server" Visible="true"> <itemtemplate> <div class="box140 h110 floatleft backwhite borderGrey margine5"> <asp:ImageButton ID="Btncerca" runat="server" OnClick="Btncerca_Click"/> </div> </itemtemplate> </asp:Repeater> <asp:Repeater ID="lstgallery" runat="server" Visible="false"> <itemtemplate> <div class="box140 h110 floatleft backwhite borderGrey margine5"> " title="<%#Eval("titolo")%>">[img]public/Foto/Small/<%#Eval([/img]" alt="<%#Eval("titolo")%>" class="padd10" border="0" /> </div> </itemtemplate> </asp:Repeater> </ContentTemplate> <Triggers> <asp:AsyncPostBackTrigger ControlID="Btncerca" EventName="Click" /> </Triggers> </asp:UpdatePanel>
Lato vb
Lato vb ho messo solo l'itemdatabound poi la creazione della lista penso sia inutile.codice:Protected Sub lstphoto_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterItemEventArgs) Handles lstphoto.ItemDataBound If e.Item.ItemType = ListItemType.Item OrElse e.Item.ItemType = ListItemType.AlternatingItem Then Dim btnImg As ImageButton = DirectCast(e.Item.FindControl("ImageButton1"), ImageButton) Dim strImgName As String = DataBinder.Eval(e.Item.DataItem, "foto").ToString() btnImg.CommandArgument = DataBinder.Eval(e.Item.DataItem, "idcategoria").ToString() btnImg.ImageUrl = "~/Public/Foto/small/" & strImgName End If End Sub
Il problema è che mi da questo errore:
Dettagli eccezione: System.InvalidOperationException: Impossibile trovare un controllo con ID 'Btncerca' per il trigger nell'UpdatePanel'UpdatePanel1'.
Cosa sbaglio?![]()
Grazie a tutti

Rispondi quotando