Sdílet prostřednictvím


Přehled komponenty BindingSource

Komponenta BindingSource je navržená tak, aby zjednodušila proces vazeb ovládacích prvků s podkladovým zdrojem dat. Komponenta BindingSource funguje jako konduit i jako zdroj dat pro navázání ostatních ovládacích prvků. Poskytuje abstrakci datového připojení formuláře při předávání příkazů do podkladového seznamu dat. Kromě toho můžete data přidat přímo do ní, aby samotná komponenta fungovala jako zdroj dat.

BindingSource – součást jako zprostředkovatel

Komponenta BindingSource funguje jako zdroj dat pro některé nebo všechny ovládací prvky ve formuláři. V sadě Visual Studio může být BindingSource vázán na ovládací prvek pomocí vlastnosti DataBindings, která je přístupná z okna Vlastnosti. Viz také Návod na: Vázání ovládacích prvků Windows Forms s komponentou BindingSource pomocí návrháře.

Komponentu BindingSource můžete svázat s jednoduchými zdroji dat, jako je jedna vlastnost objektu nebo základní kolekce, jako je ArrayList, a komplexní zdroje dat, jako je například tabulka databáze. Komponenta BindingSource funguje jako zprostředkovatel poskytující služby pro správu vazeb a měn. Během doby návrhu nebo spuštění můžete propojit komponentu BindingSource s komplexním zdrojem dat tím, že nastavíte vlastnosti DataSource a DataMember této komponenty na databázi a tabulku, v daném pořadí. Následující obrázek ukazuje, kde BindingSource komponenta zapadá do existující architektury datové vazby.

architektura zdroje vazby a datové vazby

Poznámka

V době návrhu některé akce, jako je přetažení databázové tabulky z okna dat do prázdného formuláře, vytvoří komponentu BindingSource, vytvoří vazbu s podkladovým zdrojem dat a přidá ovládací prvky pracující s daty v jedné operaci. Viz také Připojení ovládacích prvků Windows Forms k datům v aplikaci Visual Studio.

Součást BindingSource jako zdroj dat

Pokud začnete přidávat položky do komponenty BindingSource, aniž byste nejdřív zadali seznam, ke které se má svázat, bude tato komponenta fungovat jako zdroj dat ve stylu seznamu a přijme tyto přidané položky.

Kromě toho můžete napsat kód, který poskytuje vlastní funkce AddNew prostřednictvím události AddingNew, která se vyvolá při vyvolání metody AddNew před přidáním položky do seznamu. Další informace naleznete v tématu BindingSource Component Architecture.

Pro uživatele, kteří potřebují procházet data ve formuláři, umožňuje komponenta BindingNavigator procházet data a manipulovat s nimi v koordinaci s komponentou BindingSource. Další informace naleznete v BindingNavigator Control.

Manipulace s daty

BindingSource funguje jako CurrencyManager pro všechny své propojení, a proto může poskytnout přístup k informacím o měně a pozici týkající se zdroje dat. Následující tabulka ukazuje členy, které komponenta BindingSource poskytuje pro přístup k podkladovým datům a manipulaci s nimi.

Člen Popis
vlastnost Current Získá aktuální položku zdroje dat.
vlastnost Position Získá nebo nastaví aktuální pozici v podkladovém seznamu.
vlastnost List Získá seznam, který je výsledkem vyhodnocení DataSource a DataMember. Pokud DataMember není nastaveno, vrátí seznam určený DataSource.
metoda Insert Vloží položku do seznamu v zadaném indexu.
metoda RemoveCurrent Odebere aktuální položku ze seznamu.
metoda EndEdit Použije čekající změny na základní zdroj dat.
metoda CancelEdit Zruší aktuální operaci úprav.
metoda AddNew Přidá novou položku do podkladového seznamu. Pokud zdroj dat implementuje IBindingList a vrátí položku z události AddingNew, přidá tuto položku. Jinak se požadavek předá metodě AddNew seznamu. Pokud podkladový seznam není IBindingList, položka se automaticky vytvoří prostřednictvím veřejného konstruktoru bez parametrů.

Řazení a filtrování

Obvykle byste měli pracovat s seřazeným nebo filtrovaným zobrazením zdroje dat. V následující tabulce jsou uvedeny členy, které poskytuje zdroj dat komponenty BindingSource.

Člen Popis
vlastnost Sort Jestliže je zdroj dat IBindingList, umožňuje získat nebo nastavit název sloupce, který se používá k řazení a informace o pořadí. Pokud je zdrojem dat IBindingListView a podporuje rozšířené řazení, získá názvy více sloupců používaných k řazení a informace o pořadí řazení.
vlastnost Filter Pokud je zdrojem dat IBindingListView, získá nebo nastaví výraz použitý k filtrování zobrazených řádků.

Viz také