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


A BindingSource összetevő áttekintése

A BindingSource összetevő úgy lett kialakítva, hogy leegyszerűsítse a vezérlők mögöttes adatforráshoz való kötésének folyamatát. A BindingSource összetevő összekötőként és adatforrásként is működik a más vezérlőkhöz való kötéshez. Absztrakciót biztosít az űrlap adatkapcsolatáról, miközben parancsokat továbbít az alapul szolgáló adatlistára. Emellett közvetlenül is hozzáadhat adatokat, hogy maga az összetevő is adatforrásként működjön.

BindingSource-összetevő közvetítőként

A BindingSource összetevő az űrlap egyes vezérlőinek vagy mindegyikének adatforrása. A Visual Studióban a BindingSource a DataBindings tulajdonsággal lehet vezérlőelemhez kötni, amely a Tulajdonságok ablakból érhető el. Lásd még : Windows Forms-vezérlők kötése a BindingSource összetevővel a Tervezőhasználatával.

A BindingSource összetevőt kötheti egyszerű adatforrásokhoz, például egy objektum egyetlen tulajdonságához vagy egy alapszintű gyűjteményhez, például ArrayList, valamint összetett adatforrásokhoz, például egy adatbázistáblához. A BindingSource összetevő olyan közvetítőként működik, amely kötési és pénznemkezelési szolgáltatásokat nyújt. Tervezési időben vagy futásidőben egy BindingSource összetevőt egy összetett adatforráshoz köthet, ha a DataSource és DataMember tulajdonságait az adatbázisra és a táblára állítja. Az alábbi ábra bemutatja, hogy a BindingSource összetevő hol illeszkedik a meglévő adatkötési architektúrába.

kötésforrás- és adatkötési architektúra

Megjegyzés:

A tervezéskor egyes műveletek, például egy adatbázistábla adatablakból egy üres űrlapra húzása, létrehozzák a BindingSource összetevőt, az alapul szolgáló adatforráshoz kötik, és egyetlen műveletben adatérzékeny vezérlőket adnak hozzá. Lásd még: Windows Forms-vezérlők adatkapcsolása a Visual Studio-ben.

BindingSource-összetevő adatforrásként

Ha anélkül kezd elemeket hozzáadni a BindingSource összetevőhöz, hogy először megadná a kötve kívánt listát, az összetevő listastílusú adatforrásként fog működni, és elfogadja ezeket a hozzáadott elemeket.

Emellett kódot is írhat, hogy egyéni "AddNew" funkciót biztosítson a AddingNew esemény segítségével, amely akkor jön létre, amikor a AddNew metódust meghívják, mielőtt hozzáadja az elemet a listához. További információért lásd: BindingSource összetevő architektúrája.

Azoknak a felhasználóknak, amelyeknek egy űrlapon kell navigálniuk az adatok között, a BindingNavigator összetevő lehetővé teszi az adatok navigálását és manipulálását egy BindingSource összetevővel koordinálva. További információ: BindingNavigator Control.

Adatmanipuláció

A BindingSource minden kötéséhez CurrencyManager-ként működik, ezért hozzáférést biztosíthat az adatforrással kapcsolatos pénznem- és pozícióinformációkhoz. Az alábbi táblázat azokat a tagokat mutatja be, amelyeket a BindingSource összetevő biztosít az alapul szolgáló adatok elérésére és manipulálására.

Tag Leírás
Current ingatlan Lekéri az adatforrás aktuális elemét.
Position ingatlan Lekéri vagy beállítja az aktuális pozíciót az alapul szolgáló listában.
List ingatlan Megkapja a DataSource és DataMember értékelése alapján készült listát. Ha DataMember nincs beállítva, a DataSourceáltal megadott listát adja vissza.
Insert módszer Beszúr egy elemet a listába a megadott indexen.
RemoveCurrent módszer Eltávolítja az aktuális elemet a listából.
EndEdit módszer Függőben lévő módosításokat alkalmaz az alapul szolgáló adatforrásra.
CancelEdit módszer Megszakítja az aktuális szerkesztési műveletet.
AddNew módszer Új elemet ad hozzá az alapul szolgáló listához. Ha az adatforrás implementálja a IBindingList, és egy elemet ad vissza a AddingNew eseményből, hozzáadja ezt az elemet. Ellenkező esetben a kérést a lista AddNew metódusa továbbítja. Ha az alapul szolgáló lista nem IBindingList, a rendszer automatikusan létrehozza az elemet a nyilvános paraméter nélküli konstruktoron keresztül.

Rendezés és szűrés

Általában az adatforrás rendezett vagy szűrt nézetével kell dolgoznia. Az alábbi táblázat azokat a tagokat mutatja be, amelyeket a BindingSource összetevő adatforrása biztosít.

Tag Leírás
Sort ingatlan Ha az adatforrás egy IBindingList, lekéri vagy beállítja a rendezéshez használt oszlopnevet és a rendezési sorrendet. Ha az adatforrás egy IBindingListView és támogatja a speciális rendezést, akkor több oszlopnevet és a rendezési sorrend adatait kapja meg a rendezéshez.
Filter ingatlan Ha az adatforrás egy IBindingListView, lekéri vagy beállítja a megtekintett sorok szűréséhez használt kifejezést.

Lásd még