22. november 2006 - 11:58
Der er
7 kommentarer
ajax updatepanel trigger
Hej Jeg prøver at tilføje nogle triggers dynamisk: For Each drImg In ImageAdapter.GetImagebyProductID(ProductID).Rows Dim img As New System.Web.UI.WebControls.ImageButton img.ID = "SmallPic_" & drImg.imageid img.ImageUrl = "~/showimage.aspx?imageid=" & drImg.imageid & "&maxheight=40&maxwidth=40" img.ImageAlign = ImageAlign.AbsMiddle img.BorderStyle = BorderStyle.Solid img.Style.Add("border", "1px solid #D7D7D7") img.Style.Add("padding", "3px") img.CommandArgument = drImg.imageid img.ToolTip = img.ID & " - " & img.CommandArgument AddHandler img.Command, AddressOf SmallPicClicked Dim t As New Microsoft.Web.UI.AsyncPostBackTrigger t.ControlID = img.UniqueID t.EventName = "Click" Me.up3.Triggers.Add(t) Me.SmallPicPanel.Controls.Add(img) Next End If End Sub Sub SmallPicClicked(ByVal sender As Object, ByVal Args As CommandEventArgs) Me.BigPic.ImageUrl = "~/showimage.aspx?imageid=" & Args.CommandArgument & "&maxheight=200&maxwidth=200" Me.lbltest.Text = Args.CommandArgument End Sub ... men det eneste der skere når jeg trykker på knapperne er at knapperne forsvinder - triggeren bliver ikke aktiveret ??? Håber der er en som kan hjælpe.
Annonceindlæg fra Thinkwise
22. november 2006 - 12:00
#1
Her er mine update panels: <asp:UpdatePanel runat="server" ID="up3" UpdateMode="Conditional" > <ContentTemplate > <asp:Image runat="server" ID="BigPic" /> </ContentTemplate> </asp:UpdatePanel> <asp:UpdatePanel runat="server" ID="up2"> <ContentTemplate > <asp:Panel Wrap="false" runat="server" ID="SmallPicPanel"> </asp:Panel> </ContentTemplate> </asp:UpdatePanel>
22. november 2006 - 12:21
#2
Kører den kode du har vist hver gang siden loader? ... Jeg er ikke helt med på hvad du vil med triggeren. Kan du ikke bare kalde update på det respektive panel i den eventhandler (SmallPicClicked) du alligevel ønsker at eksekvere? Mvh
22. november 2006 - 12:34
#3
ja koden køre hver gang siden loader... jeg har prøvet at indsætte Me.up3.Update() sidst i SmallPicClicked, emn uden nogen effekt.
22. november 2006 - 12:41
#4
det virker fint når jeg manuelt tilføjer: <asp:ImageButton ID="Button3" Runat="Server" CommandArgument="146" ImageUrl="~/showimage.aspx?imageid=146&maxheight=40&maxwidth=40" OnCommand="SmallPicClicked" Width="150"/> i up2 ...og <Triggers > <asp:AsyncPostBackTrigger ControlID="button3" EventName="Click" /> </Triggers> i up3
22. november 2006 - 13:14
#5
Hvis knapperne forsvinder - tyder det på at du ikke får kørt koden hver gang. Det vil også medføre at du ikke får kaldt eventhandleren, og det vil derfor ikke have nogen effekt - uanset hvad du laver i den handler. Kan du ved debugging konstatere at du rent faktisk får kørt koden hver gang? Mvh
22. november 2006 - 16:23
#6
nu har jeg fået en del af det til at virke, men hvordan får jeg følgende til ikke at reloade where gang der bliver trykket på en imagebutton???? For Each drImg In ImageAdapter.GetImagebyProductID(ProductID).Rows Dim img As New System.Web.UI.WebControls.ImageButton img.ID = "SmallPic_" & drImg.imageid img.ImageUrl = "~/showimage.aspx?imageid=" & drImg.imageid & "&maxheight=40&maxwidth=40" img.ImageAlign = ImageAlign.AbsMiddle img.BorderStyle = BorderStyle.Solid img.Style.Add("border", "1px solid #D7D7D7") img.Style.Add("padding", "3px") img.CommandArgument = drImg.imageid 'img.ToolTip = img.ID & " - " & img.CommandArgument AddHandler img.Command, AddressOf SmallPicClicked Me.SmallPicPanel.Controls.Add(img) Next
23. november 2006 - 17:16
#7
Du smider kontrollerne ind i dit updatepanels ContentTemplateContainer ... Sådan noget i denne stil: ditUpdatePanel.ContentTemplateContainer.Controls.Add(img); Mvh
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.