|
|
ASP.NET QuickStart Príručka
Ovládací prvok GridView v ASP.NET je nasledovníkom DataGrid-u v1.x s pridanými schopnosťami ako použiť rozšírené možnosti ASP.NET-u pri narábaní so zdrojmi dát. Zatiaľčo verzia v1.x požadovala od programátora aby písal vlastný kód pre základné operácie ako sú stránkovanie, triedenie, editovanie alebo mazanie dát, ovládací prvok GridView má už v sebe implementovanú podporu pre tieto operácie.
Ovládací prvok GridView poskytuje i ďalšie výmoženosti nad DataGrid-om (dátovou mriežkou, tabuľkou) ako sú definovanie viacnásobných primárnych kľúčov, a ďalšie výmoženosti ako ďalšie typy dátových polí a možností šablónovania. Odkrýva i ďalšie modely pre autora stránky ako podržať alebo zahodiť udalosti.
Nasledujúci príklad je ukážkou ovládacieho prvku GridView vloženého do ovládacieho prvku SqlDataSource aby sa vygenerovala tabuľka s dátami, určená len na čítanie.
VB GridView-SqlDataSource
V predchádzajúcom príklade ovládací prvok GridView prechádza poliami dátovýh záznamov, ktoré vrátil ovládací prvok SqlDataSource, aby dynamicky generoval stĺpce dátovej tabuľky (grid-u). Môžete i priamo definovať, ktoré stĺpce sa majú zobrazit, a to pridaním objektov DataControlGrid do kolekcie Columns ovládacieo prvku GridView.
To umožní nie len vybrať stĺpce, ktoré chcete zobraziť, ale i určiť ich relatívne poradie.
Nasledujúci príklad je ukážkou kolekcie objektov BoundField a CheckBoxField v kolekcii Columns ovládacieho prvku GridView.
Z ďalších údajových typov, ktoré je možné priradiť kolekcii, sú tu ImageField, HyperLinkField, CommandField, ButtonField a TemplateField.
VB GridView-SqlDataSource (BoundFields)
Jednou z kľúčových výhod ovládacieho prvku GridView oproti iným, ktoré súvisia s narábaním s dátami, je jeho schopnosť automaticky prevziať výhody, ktoré sú poskytované v súvislosti s dátovými zdrojmi.
Namiesto pracného vytvárania kódu pre odstránkovanie a usporadúvanie ovládací prvok GridView robí tieto operácie automaticky (za predpokladu, že dátový zdroj tieto operácie podporuje).
Nasledujúci príklad je ukážkou ovládacieho prvku GridView s povoleným usporiadavaním.
VB GridView Sorting
V ovládacom prvku GridView je možné i povoliť stránkovanie nastavením vlastnosti AllowPaging na hodnotu true (pravda). Ovládací prvok GridView dokáže odstránkovať hodnoty, ktoré sa vrátia z nejakého dátového zdroja, ktorý podporuje rozhranie ICollection. Ak je SqlDataSource v móde DataSet, DataView dokáže vrátiť odstránkovaný výsledok, lebo mód DataSet podporuje takéto rozhranie. Ak je SqlDataSource v móde DataReader, ovládací prvok DataView nedokáže stránkovať výstup, ktorý vráti SqlDataSource.
Nasledujúci príklad je ukážkou stránkovania cez GridView s dátami, ktoré vrátil SqlDataSource v móde DataSet.
VB GridView Paging
Ovládací prvok GridView podporuje špeciálny mód pre stránkovanie a usporiadanie, ktorý preberá výhody volaní z klientovej strany smerom na server, ktoré obstarávajú dáta na zobrazenie ďalšej stránky alebo nanovo usporiadané dáta. Aby sa sprístupnila táto funkcia, je potrebné nastaviť vlastnosť EnableSortingAndPagingCallbacks na hodnotu true (pravda). Nezabúdajte, že ak sa vykonáva operácia zobrazenia stránky alebo usporiadania, stránka nemusí byť odoslaná kvôli získaniu nových hodnôt (aj keď klientský script vykoná spätné volanie na server). Táto funkcia nie je podporovaná ak ovládací prvok GridView obsahuje zašablónované polia. V prípade, že je táto funkcia povolená, zobrazenie tlačidla Select v poli CommandField nie je podporované.
VB GridView Paging and Sorting Callbacks
Rovnako ako usporiadanie a stránkovanie, ovládací prvok GridView dokáže automaticky prechádzať UI kvôli modifikácií dát: operáciami Update a Delete (aktualizácia, mazanie), pričom asociované zdroje dát sú nakonfigurované tak, aby poskytovali tieto možnosti. Ovládací prvok SqlDataSource podporuje operáciu Update (aktualizáciu) dát, ak je nastavená jeho vlastnosť UpdateCommand a operáciu Delete (mazanie) dát, ak je nastavená jeho vlastnosť DeleteCommand na správny príkaz Update / Delete alebo odkaz na uloženú procedúru. Príkazy UpdateCommand alebo DeleteCommand môžu obsahovať umiestnenia pre parametre každej hodnoty, ktorou bude ovládací prvok GridView prechádzať.
Sprístupnenie UI v ovládacom prvku GridView pre operácie Update a Delete je možné vykonať i nsatavením hodnoty vlastností AutoGenerateEditButton a AutoGenerateDeleteButton na hodnotu true (pravda), alebo môžete pridať do GridView CommandField a povoliť jeho vlastnosti ShowEditButton a ShowDeleteButton.
Ovládací prvok GridView podporuje editovanie alebo mazanie jediného riadka v rámci jedného kroku. Pre editovanie si užívateľ vyberie konkrétny riadok do editovacieho módu a potvrdí aktualizáciu kliknutím na tlačidlo Update ešte kým sa riadok nachádza v tomto móde. Užívateľ môže stlačiť i tlačidlo Cancel aby opustil editovací režim bez vykonania zmien a vrátil sa do módu určeného len na čítanie (read-only).
Nasledujúci príklad je ukážkou ovládacieho prvku GridView s SqlDataSource nakonfigurovanou pre aktualizáciu dát v riadkoch.
VB GridView Updating
Dôležitou vlastnosťou, ktorá hrá špeciálnu rolu pri operáciách Update a Delete je vlastnosť DataKeyNames. Hodnota tejto vlastnosti je bežne nastavená na názvy polí z dátového zdroja, ktoré sú časťou primárneho kľúča, určujúceho riadok v dátovom zdroji. Pri určovaní tejto vlastnosti deklaratívne (vymenovaním prvkov) sa jednotlivé kľúče oddeľujú bodkočiarkou, aj keď bežne býva iba jeden kľúč. Hodnoty polí určených vo vlastnosti DataKeyNames putujú do zobrazovacieho režimu na pozadí, aby sa zachovali také aké sú pre prípad vykonania operácie Update alebo Delete, a to aj vtedy, ak nie sú povolané ako jedny zo stĺpcov v ovládacom prvku GridView.
Ak GridView spustí operáciu Update alebo Delete nad dátovým zdrojom, odošlú sa hodnoty týchto polí do dátového zdroja v špeciálnom slovníku Keys, a to oddelene od slovníka Values, ktorý obsahuje nové hodnoty vložené užívateľom v čase keď bol riadok v editačnom móde (za účelom aktualizovania). Obsah slovníka Values sa získava zo vstupných ovládacích prvkov za doby, keď je riadok v editačnom móde. Vyňať niektorú z hodnôt zo slovníka možno nastavením vlastnosti ReadOnly na hodnotu true (pravda) v príslušnom BoundField v kolekcii stĺpcov. Ak používate GridView dizajnér vo Visual Studiu, vlastnosť RedOnly je prednastavená pre stĺpce primárnym kľúčom štandardne na hodnotu true.
Ak chcete vidieť Viac príkladov a informácií o používaní ovládacieho prvku GridView, informujte sa v kapitole
Prístup k údajom.
|
|