[ skender @ 13.03.2005. 15:49 ] @
Pozdrav,
radili smo u php-u neke skripte i sada zelimo da neke rezultate, koje postižemo sa phpom, postignemo i sa asp.netom. Imamo slijedeći problem koji se vrlo lako može riješiti u php-u ali u asp.net je sve puno komplikovanije. Ovako:

u celiji jedne tebele, treba da se nalazi link koji otvara drugu stranicu i proslijeduje joj neku varijablu kao GET parametar. Primjer php koda:

<td> <a href='nekaStranica.php?id=<? echo $nekaVarijabla ?>'>link</a> </td>

Kada se ovaj kod parsira, cisti html izgleda ovako:

<td> <a href='nekaStranica.php?id=2'>link</a> </td> ili tako slično...

sada pitanje:

kako ovo isto izvesti u aspxu?? pokušali smo neke stvari preko property buildera za datagrid, ali bez puno uspjeha, jer nema mogućnosti da se dodaju neke dinamičke vrijednost...

hvala unaprijed,

Eminem i Dr. Dre


[ spartak @ 13.03.2005. 17:06 ] @
<td> <a href='nekaStranica.aspx?id=<%=nekaVarijabla%>'>link</a> </td>

s tim da ti je ta varijabla mora da postoji u codebehind, da je napunjena tom vrednoscu i da ima odgovarajucu vidljivost da mozes da je koristis u ascx (public, protected)

[ rkrulj @ 15.03.2005. 15:55 ] @
Atribut AutoGenerateColumns na .aspx je pozeljno postaviti na false, a onda u Columns redom dodajes jedan po jedan templejt za svaku kolonu i dajes mu izraz za bindovanje sa odg kolonom iz baze npr. sa
<COLUMNS>
<ASP:TEMPLATECOLUMN headertext="ImeKolone" SortExpression="ImeKolone ASC">
<ITEMTEMPLATE>
<%# DataBinder.Eval(Container.DataItem, "ImeKolone") %>
</ITEMTEMPLATE>
</ASP:TEMPLATECOLUMN>
......

i na kraju ako zelis da ti jedna kolona bude hiperlink koji upucuje na neku stranicu to onda mozes postici sa
<ASP:TEMPLATECOLUMN headertext="Posjeti">
<ITEMTEMPLATE>
<a href="..."><%# DataBinder.Eval(Container.DataItem, "ImeURLKoloneUBazi") %></a> </ITEMTEMPLATE>
</ASP:TEMPLATECOLUMN> </COLUMNS>

Jos vise mogucnosti u smislu formatiranja URL-a sa vrijednostima iz neke druge kolone daje ti klasa tj.sablon za kolonu grida HyperLinkColumn i njezini propertiji DataNavigateURLField i DataNavigateURLFormatString itd.. pomocu koje mozes pozivati npr. parametrizovane skript funkcije itd. Pogledaj u MSDN ako ga imas dje pri ruci dokumentaciju za ove klase i primjere. I naravno sve ovo vazi ako si koristio binding, ali pretpostavljam da to jesi radio, tj, da nisi dinamicki dodavao redove u grid jedan po jedan red vec si DataSource napunio sa nekim DataTable-om, DataView-om ili sl. objektom koji vec implementira odgovarajuci interfejs kako bi se mogao dodijeliti DataSource-u, pa onda pozvao metod DataBind() svog DataGrid-a. Pozdrav od Hercegovca!
[ TimKovse @ 21.03.2005. 16:21 ] @
Izberes datagrid v katerem hoces imeti linke. Kliknes desni gumb na miski in izberes Property builder. Gres v Columns in dodas: HyperLink Column. Za header text pac napises nekaj, vseeno kaj. Isto naredis pri Text-u. Pod URL field pa das nek ID (stevilka tega ID-ja se ti bo spreminjala (recimo: ID_user)). V URL format string pa vpises recimo: user.aspx?id={0}

To je pa tudi vse, upam, da ti bo delalo.

Lep pozdrav.

Tim Kovse.