[ era1 @ 23.10.2006. 10:11 ] @
Imam skup zapisa u tabeli. Jedan od atributa je i slika (u bazi konkretno drzim samo putanju, a img file van baze). Sada hocu da prikazem taj skup na ASP.NET formi, ali da se prikazu na sledeci nacin:

SLIKA ATRIBUT1 ATRIBUT2 ATRIBUT3

SLIKA ATRIBUT1 ATRIBUT2 ATRIBUT3

SLIKA ATRIBUT1 ATRIBUT2 ATRIBUT3

SLIKA ATRIBUT1 ATRIBUT2 ATRIBUT3

Znaci kao neki DataGrid ili DataLista.

Mene zanima da li je bolje koristiti DataGrid ili DataList kontrolu. Takodje me interesuje kako se radi to sa slikom, jer meni nikako ne uspeva. Ne mora detaljan kod, samo korake, kratko uputstvo.

Lep primer onoga sto meni treba jesu sajtovi koji se bave autooglasima http://www.mobile.de ili nas domaci http://www.automobili.co.yu


pozzz svima
[ CallMeSaMaster @ 24.10.2006. 13:47 ] @
Ne znam da lis am najbolje shavtio-Da li ti zelis da prikazes sliku i pored neke podatke ili sta?

Ako zelis ovo onda mozes na jednostavan nacion to da uradis i to:

CASE
WHEN Photo IS NOT NULL
THEN '<img src="photo.gif">'
ELSE ''
END As Photo


Da li je to to ili zelis nesto drugo?
[ draganc__ @ 24.10.2006. 14:37 ] @
Mozes koristiti i DataGrid i DataList. Evo ti primjer za DataList:

Pretpostavka: slike se nalaze u folderu "slike".
Pretpostavka dva: U bazi su polja: ID, SLIKA, NAZIV, CIJENA.

Prvo napravis konekciju sa bazom, pa ubacis u DataSet podatke.
Stavis DataList na formu, DataSource property podesis da bude tvoj DataSet.
Desni klik na DataList, odaberi Edit Templates -> Item Templates. Sada tu mozes proizvoljno editovati dizajn, pa jedna od opcija:
1. ubaci tabelu (padajuci meni odaberi Insert -> Table), neka ima jedan red i pet kolona.
2. u prvu kolonu ubaci Web Control Image.
3. u drugu ubaci HyperLink
4. u ostale ubaci Label-e

Oznaci sliku pa u prozoru Properties, klikni na DataBindings. Oznaci ImageUrl i odaberi Custom binding expresion.
U text box upisi: "slike/"+DataBinder.Eval(Container.DataItem, "SLIKA").ToString(), i to je to.

Oznaci hyperlink pa u prozoru Properties, klikni na DataBindings. Oznaci Text i odaberi Custom binding expresion.
U text box upisi: DataBinder.Eval(Container.DataItem, "NAZIV").ToString(), i to je to.
Ako zelis da HyperLink vodi na neku drugu stranu onda opet DataBindings pa odaberi NavigateUrl i opet Custom binding expresion:
U text box upisi: "neka_druga_strana.aspx?ItemID="+DataBinder.Eval(Container.DataItem, "ID").ToString()
Tako si prenio ID preko query stringa da znas na drugoj strani sta je korisnik odabrao.

Oznaci labelu pa u prozoru Properties, klikni na DataBindings. Oznaci Text i odaberi Custom binding expresion.
U text box upisi: DataBinder.Eval(Container.DataItem, "CIJENA").ToString() +" EUR".

To je to. Ako budes imao problema samo pitaj.
[ era1 @ 25.10.2006. 11:11 ] @
To je tacno ono sto sam trazio druze Cigo!
Objasnio si brate za medalju, direktno u centar teme, i lud bi ukapirao, sad sve radi k'o sat.

Hvala puno i srdacan pozdrav!!!
[ era1 @ 01.11.2006. 09:32 ] @
Da pitam jos nesto:

Da li je moguce primeniti isti princip i na DataGrid ili DataView? Ja sam pokusavao, ali nisam uspeo. Uspeo sam da napravim kolone koje vuku podatke iz baze, ali ne i da ubacim neki Template dizajna u koji bi se podaci ucitavali (kao u gore navedenom primeru DataLst-a). Template sam uspeo da ubacim samo u PagingTemplate kod DataView-a, a osim toga ima i EmptyTemplate za koji ne znam cemu sluzi.

Dakle da li je moguce primeniti gore navedeni nacin dizajniranja Template-a u DataGrid ili DataView?

pozzz svima