webForumDet fria alternativet

Asp.Net - Lista bilder

8 svar · 382 visningar · startad av patric82

patric82Medlem sedan aug. 200240 inlägg
#1

Hej

Listar alla bilder som ligger i en katalog. När man klickar på bilden ska bildens filnamn läggas i en textbox. Detta genom att använda imagesbuttons kopplat till en subrutin

Problemet uppstår när jag ska tala om vilken subrutin imagebuttonen ska hoppa till vid klick.

Hur löser jag detta, och hur skulle koden se ut ?

imgb.OnClick = SaveImages fungerar inte, se nedan

KOD -----------------------------------------------------------------------------

<script language="VB" runat="server">
private dir as DirectoryInfo
private f as FileInfo

sub Page_Load(obj as object, e as eventargs)

	dir = new DirectoryInfo(Server.MapPath("../Images"))
    dim imgb as Imagebutton	
	
    for each f in dir.GetFiles("\*.\*")
	   imgb = new Imagebutton
	   imgb.ID = f.Name
	   imgb.ImageUrl = Server.MapPath("../Images/") & f.Name
       imgb.OnClick = SaveImages
	
       PanelImages.Controls.Add(imgb)
       PanelImages.Controls.Add(new LiteralControl("\<br\>"))
	next

end sub

sub SaveImages(ByVal sender As Object, ByVal e As ImageClickEventArgs)
Images.Text= sender.ID
end sub

</script>

<form runat="server">
<asp:Panel id="PanelImages" runat="server" MaintainState="true" />
<asp:TextBox id="Name" runat="server"/>
<asp:TextBox id="Info" runat="server"/>
<asp:TextBox id="Images" runat="server"/>
</form>
-----------------------------------------------------------------------------------

Felmeddelande ---------------------------------------------------------------

Compiler Error Message: BC30390: 'System.Web.UI.WebControls.ImageButton.Protected Overridable Overloads Sub OnClick(e As System.Web.UI.ImageClickEventArgs)' is not accessible in this context because it is 'Protected'.

Line 18: imgb.OnClick = SaveImages

-----------------------------------------------------------------------------------

renholmMedlem sedan apr. 20012 266 inlägg
#2

testa med

protected sub SaveImages

eller så var det så man gjorde om man kör med codebehind kommer inte ihåg....

patric82Medlem sedan aug. 200240 inlägg
#3

Hej, provade att använda protected framför sub, men det hjälpte inte, fick samma fel som innan (se ovan).

går det att lösa på något annat sätt ?

renholmMedlem sedan apr. 20012 266 inlägg
#4

Skulle man kunna få exakt hela koden?

patric82Medlem sedan aug. 200240 inlägg
#5

Hej Renholm

Komplett kod, se bifogad fil (Add.txt)

Sidan består av tre textrutor. Två matar man in text i, och den tredje har en bläddra knapp som listar alla bilder som ligger i en mapp på serven.

När man klickar på en av bilderna ska dess filnamn läggas till i textrutan. Därefter lagras jag inmatad information i en databas.

Hoppas du förstår vad jag menar.

Mvh Patric

renholmMedlem sedan apr. 20012 266 inlägg
#6

Ahh, nu är jag med :)

Det ska inte vara OnClick utan bara Click. Testa det.

patric82Medlem sedan aug. 200240 inlägg
#7

Hej, provade att ändra till från OnClick till Click, och nu uppkom följande fel istället.

Compiler Error Message: BC32022: 'Public Event Click(sender As Object, e As System.Web.UI.ImageClickEventArgs)' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event.

Line 18: imgb.Click = SaveImages

renholmMedlem sedan apr. 20012 266 inlägg
#8

Hum, kika här:
http://groups.google.com/groups?q=dynamic+imagebuttons+click+event&hl=sv&lr=&ie=UTF-8&oe=UTF-8&selm=1af001c1b094%2428bb81b0%2435ef2ecf%40TKMSFTNGXA11&rnum=1

Sorry om jag inte är så bra på att hjälpa, det är VB :)

Här har du mer info om EventHandlers:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcn7/html/vaconUnderstandingEventHandlers.asp

Någon annan som kan detta bättre än mig? hör av er :)

Kom på kanske än bättre lösning, skapa en DataGrid eller DataList som du binder filerna till, det är mycket lättare att hantera klicken då eftersom de hanteras i DataGridens eller DataListens ItemCommand.

patric82Medlem sedan aug. 200240 inlägg
#9

Datalist var lösningen, tack för hjälpen :)

147 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
143 ms — hämta tråd, inlägg och bilagor (db)