Hej! Ser att jag själv försökt nåt liknande i en Repeater och det borde inte skilja så mkt mellan dom. Martin, För att enklast komma åt den så brukar jag använda casting ( istället för eval) Ahh, kanske inte går så enkelt som jag hade hoppats på när det är ett custom objekt... Kör på Patriks istället och berätta gärna om det löste det eller inte... Har provat men får felmeddelandet Det borde innebära att DataItem är Nothing. Har du kollat att den verkligen innehåller ngt? Verkar som om min jag inte kan sätta värdet i min image som ligger i en datagrid. Är du säker på att bildens id är just "thumb"? Databind custom classes
Hur gör jag för att komma åt en egenskap i mitt objekt i onitemdatabound på en datagrid??
Mitt objekt är bundet till min datagrid.
Egenskapen Thumb ligger i ett objekt som heter fastighet.
Har provat nedanstående men det funkar inte.
With CType(e.Item.FindControl("thumb"), System.Web.UI.webcontrols.Image)
.ImageUrl = DataBinder.Eval(e.Item.DataItem, "thumb") ---- funkar inte
.ImageUrl = CType(e.Item.DataItem, System.data.DataRowView).Item("thumb").ToString() --- funkar inte
End WithSv: Databind custom classes
Testa:
With CType(e.Item.FindControl("thumb"), System.Web.UI.webcontrols.Image)
.ImageUrl = e.Item.DataItem("thumb")
End WithSv:Databind custom classes
provade får då felmedelandet
No default member found for type 'objekt'. Sv: Databind custom classes
with CType(e.Item.FindControl("thumb"), Image)
.ImageUrl = CType(e.Item.DataItem, MyCustomType).Thumb
end with
Då får jag hjälp av intellisens och det kan ju vara rätt skönt.Sv:Databind custom classes
/MartinSv: Databind custom classes
Object reference not set to an instance of an object.
Borde ju vara rätt....Sv:Databind custom classes
Sv: Databind custom classes
Hur skall jag hitta min image i datagriden??
Nedanstående verkar inte fungera!
CType(e.Item.FindControl("thumb"), image).imageurl="bla.gif"Sv:Databind custom classes
Annars är det exkt det felet du får om den inte kan hitta kontrollen. Sen är jag inte 100 på hur vb's typkonvertering fungerar. Men i C# krävs det att jag har Image med stor bokstav eftersom det är vad typen heter. Kolla gärna så att intellisensen hänger med där och att du verklgen konverterar till rätt typ :)
ett sätt att kolla om du hittat image kontrollen kan vara att göra så här:
Dim oThumb As Object = e.Item.FindControl("thumb")
If not oThumb is Nothing
CType(oThumb, Image).ImageUrl = 'blabla.gif"
End If
Om oThumb är nothing så har den helt enkelt inte hittat din kontroll.