[ west_herc @ 23.01.2009. 09:53 ] @
Potrebna mi je pomoć oko sljedećeg! Početniksam u ASP-u i hoću da testiram nešto sa bazom.

Spojim se na bazu preko OLEDBADAPTERA, i povučem svoje podatke koje mi trebaju u TABLE ADAPTER i do ove točke je sve ok.

Sad želim da te podatke prikažem u GridView-u, ali ne bindanjem klasičnim, već da radim sa foreach petljom i punim po ROWSima i CELLima, ali me zanim akako im pristupiti! Kako pristupiti ćelijama i kolonama u GridView-u?

Također me zanima da li je ovako dobra praksa rada ili da radim drag and drop pa klasično bind i to je to?

Fala!
[ deerbeer @ 23.01.2009. 11:01 ] @
Citat:

Sad želim da te podatke prikažem u GridView-u, ali ne bindanjem klasičnim, već da radim sa foreach petljom i punim po ROWSima i CELLima, ali me zanim akako im pristupiti!

Zasto bi to radio ? GridView odradi sve sam sa DataBind() i DataSource ,
a druga solucija je da koristis petlju pa da genrises kroz kod html tabelu sa <table>, <tr> i <td> tagovima
ako hoces bolji vizulelni izgled od onog sto GridView fabricki daje .

Ako ti treba dodatno formatiranje u GridView u redovima tj. kolonama
mozes iskoristiti event od GridView-a Row_DataBound
Code:

protected void dgView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    //event se okida na svaki DataRow koji bind-ujes za Grid . 
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        DataRowView drv = (DataRowView)e.Row.DataItem;
        object value =  drv.Row[0]); // vrednosti polja iz baze tj. tabele koje bind-ujes za grid . 
        e.Row.Cells[3].Text = "Neko formatiranje" ; //ispisujes formatirani tekst u celiju gridview-a 
    }

}

[ west_herc @ 23.01.2009. 12:12 ] @
Dakle vi preporučujete da ja to radim sa Bindanjem?

Budući da sam malo radio na desktop aplikaciji ovaj način nmi je brži pri radu i bolji za menadžiranje?

Nebih ja da sve ovo napravim klikom miša!

Jel to znači da mi netrebaju datatable?
[ deerbeer @ 23.01.2009. 13:04 ] @
Treba ti DataTable za GridView
Code:
 
gridView.DataSource = dataTable;  
gridView.DataBind() ; 

U ovom slucaju grid ce da prikazuje sve kolone i redove koji ima datatable
(uklucujuci i ID tj. primarni kljuc) koji ti ustvari ne treba da bi ga prikazao .
Ako hoces samo pojedine kolone da prikazes znaci samo filtriranje po kolinama
moras namestiti u properties od grid-a Columns->Collection
pa da dodajes u listu kolone koje ti trebaju
tako sto im posle u BoundFields propertiju za DataField mapiras naziv kolone datatable-a.
da bi grid znao odakle da uzme vrednost iz tvoje tabele .
Ovaj nacin je dosta laksi jer ne zahteva dodatno kodiranje a i ima dodatne stvari za
stilizovanje layouta tabele .
[ deerbeer @ 23.01.2009. 22:42 ] @
Eh da .. nemoj da me svatis pogresno nisam pristalica point & click programiranja bez vise od 2 linije koda ,
al kad dobijes da odradis 15-20 tabela na ovaj slican nacin kroz generisanja html pretvori se u "zamor materijala" i ispravljanje gresaka od parsiranja html-a
umesto vise da posvetis se logici i funkcionisanju aplikacije .
Programiranje interfejsa po meni i treba da bude najlakse pogotovu na nivou web-aplikacija i sajtova.