Hejsan gott folk!
I min aspxfil finns en kolumn som har en ItemTemplate enligt följande:
<ItemTemplate>
<asp:Label ID=lblid Runat=server text='<%#Container.dataItem("filmid")%>'>
</asp:Label>
</ItemTemplate>
och i min codebehindfil i datagriddets itemCreated event har jag följande.
(jag vet att koden inte är snygg, onödigt mkt databastjaffs för varje item, men är i ett testläge just nu)
If (e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem) Then
dadGenres = New OleDbDataAdapter("SELECT genres.genre, genre_id from genres", connection)
dadGenres.Fill(dsGenres, "data")
[B] Dim strTest As String = CType(e.Item.Cells(0).Controls(1), Label).Text[/B]
Response.Write(strTest + "<br>")
Dim ddlGenre As New DropDownList
ddlGenre.DataSource = dsGenres
ddlGenre.DataTextField = "genre"
ddlGenre.DataValueField = "genre_id"
ddlGenre.DataBind()
e.Item.Cells(4).Controls.Add(ddlGenre)
End If
Det jag har problem med är att när strTest som hämtar sin text från labeln jag skapat med hjälp av aspx sidan och Container.dataItem. så finns det inget där!, skriver jag själv in en text för hand i aspxfilen så går den utan problem att hämta. och jag har kollat på id att det är samma label jag får tillbaka efter Ctype:ningen.
Målet med allt det här är att jag vill ha ut "filmid" för att kunna göra en sqlsats som selectar vilka genrer varje film med detta filmid och därefter befolka min ddlGenre med den istället som det är nu då alla genres är med.
Hoppas någon kan hjälpa till!