Megosztás a következőn keresztül:


Adatmegjelenítési módok a Windows Forms DataGridView vezérlőben

A DataGridView vezérlő három különböző módban jelenítheti meg az adatokat: kötött, kötetlen és virtuális. A követelményeknek megfelelően válassza ki a legmegfelelőbb módot.

Kötetlen

A kötetlen mód alkalmas viszonylag kis mennyiségű, programozott módon kezelt adat megjelenítésére. A DataGridView vezérlőt nem csatolja közvetlenül egy adatforráshoz, mint a kötött mód esetében. Ehelyett saját maga kell kitöltenie a vezérlőt, általában a DataGridViewRowCollection.Add metódus használatával.

A kötetlen mód különösen hasznos lehet statikus, írásvédett adatokhoz, vagy ha saját kódot szeretne írni, amely egy külső adattárral kommunikál. Ha azonban azt szeretné, hogy a felhasználók külső adatforrásokkal kommunikáljanak, általában kötött módot fog használni.

Egy írásvédett kötetlen DataGridViewhasználatát bemutató példáért lásd: Útmutató: Kötetlen Windows Forms DataGridView-vezérlő létrehozása.

Kötött

A kötött mód alkalmas az adatok az adattárral való automatikus interakcióval történő kezelésére. A DataGridView vezérlőelemet közvetlenül az adatforrásához csatolhatja a DataSource tulajdonság beállításával. Ha a vezérlő adathoz kötött, az adatsorok leküldése és lekérése anélkül történik, hogy explicit felügyeletet kellene igényelnie az Ön részéről. Ha a AutoGenerateColumns tulajdonság true, az adatforrás minden egyes oszlopa létrehoz egy megfelelő oszlopot a vezérlőben. Ha inkább saját oszlopokat szeretne létrehozni, ezt a tulajdonságot úgy állíthatja be, hogy false, és a DataPropertyName tulajdonsággal kösse össze az egyes oszlopokat a konfiguráláskor. Ez akkor hasznos, ha az alapértelmezés szerint létrehozott típustól eltérő oszloptípust szeretne használni. További információkért lásd: Oszloptípusok a Windows Forms DataGridView vezérlőben.

Egy kötött DataGridView vezérlőelemet használó példáért lásd: Útmutató: Adatok érvényesítése a Windows Forms DataGridView vezérlő.

Kötetlen oszlopokat is hozzáadhat egy DataGridView vezérlőelemhez kötött módban. Ez akkor hasznos, ha olyan gombokat vagy hivatkozásokat tartalmazó oszlopot szeretne megjeleníteni, amely lehetővé teszi a felhasználók számára, hogy műveleteket hajtsanak végre adott sorokban. A kötött oszlopokból számított értékeket tartalmazó oszlopok megjelenítése is hasznos. Az CellFormatting esemény kezelőjében feltöltheti a számított oszlopok cellaértékét. Ha azonban adatforrásként egy DataSet-t vagy DataTable-et használ, érdemes lehet a DataColumn.Expression tulajdonságot használni egy számított oszlop létrehozásához. Ebben az esetben a DataGridView vezérlőelem ugyanúgy kezeli a számított oszlopot, mint az adatforrás bármely más oszlopát.

Kötött módban nem támogatott a kötetlen oszlopok szerinti rendezés. Ha felhasználó által szerkeszthető értékeket tartalmazó kötött módban hoz létre kötetlen oszlopot, akkor virtuális módot kell implementálnia az értékek fenntartásához, ha a vezérlőelemet kötött oszlop rendezi.

Virtuális

A virtuális móddal saját adatkezelési műveleteket valósíthat meg. Ez a kötött módban lévő kötetlen oszlopok értékeinek fenntartásához szükséges, ha a vezérlőelem kötött oszlopok szerint van rendezve. A virtuális mód elsődleges használata azonban a teljesítmény optimalizálása nagy mennyiségű adat használatakor.

Csatolja a DataGridView vezérlőt egy ön által kezelt gyorsítótárhoz, és a kódja határozza meg, mikor kerülnek az adatsorok leküldésre és lekérésre. A memóriaigény kis méretének megőrzése érdekében a gyorsítótárnak a jelenleg megjelenített sorok számához hasonló méretűnek kell lennie. Amikor a felhasználó új sorokat görget a nézetben, a kód új adatokat kér le a gyorsítótárból, és opcionálisan kiüríti a régi adatokat a memóriából.

A virtuális mód megvalósításakor nyomon kell követnie, hogy mikor van szükség új sorra az adatmodellben, és mikor kell visszaállítania az új sor hozzáadását. Ennek a funkciónak a pontos megvalósítása az adatmodell megvalósításától és az adatmodell tranzakciószemantikájának függvénye; a véglegesítési hatókör a cella vagy a sor szintjén van-e.

További információ a virtuális módról a Virtuális mód a Windows Forms DataGridView Controlcím alatt található. A virtuális mód eseményeinek használatát bemutató példáért tekintse meg útmutatót: Virtuális mód implementálása a Windows Forms DataGridView Control.

Lásd még