Sdílet prostřednictvím


Vytvoření vazby ovládacích prvků Windows Forms k datům v aplikacích .NET Framework

Poznámka:

Třídy DataSet a související třídy jsou starší technologie rozhraní .NET Framework z počátku 2000, které umožňují aplikacím pracovat s daty v paměti, zatímco aplikace jsou odpojeny od databáze. Tyto technologie jsou zvláště užitečné pro aplikace, které uživatelům umožňují upravovat data a uchovávat změny zpět do databáze. I když jsou datové sady ověřenou úspěšnou technologií, doporučeným přístupem pro nové aplikace .NET je použití Entity Framework Core. Entity Framework poskytuje přirozenější způsob práce s tabulkovými daty jako objektovými modely a má jednodušší programovací rozhraní.

Data můžete uživatelům aplikace zobrazit vazbou dat na Windows Forms. Chcete-li vytvořit tyto ovládací prvky vázané na data, přetáhněte položky z okna Zdroje dat do Windows Forms Designeru v sadě Visual Studio.

Operace přetažení zdroje dat

Návod

Pokud okno Zdroje dat není viditelné, můžete ho otevřít tak, že zvolíte Zobrazit> jinézdroje datWindows> nebo stisknete klávesu Shift+Alt+D. Abyste viděli okno Zdroje dat , musíte mít otevřený projekt v sadě Visual Studio.

Před přetažením položek můžete nastavit typ ovládacího prvku, se který chcete svázat. Různé hodnoty se zobrazí v závislosti na tom, jestli zvolíte samotnou tabulku nebo jednotlivý sloupec. Můžete také nastavit vlastní hodnoty. U tabulky Podrobnosti znamená, že každý sloupec je vázán na samostatný ovládací prvek.

Vytvoření vazby zdroje dat k DataGridView

BindingSource a BindingNavigator – ovládací prvky

Komponenta BindingSource slouží ke dvěma účelům. Nejprve poskytuje vrstvu abstrakce při vazbě ovládacích prvků k datům. Ovládací prvky ve formuláři jsou vázané na komponentu BindingSource místo přímo ke zdroji dat. Za druhé může spravovat kolekci objektů. Přidáním typu do BindingSource vytvoříte seznam tohoto typu.

Další informace o komponentě najdete tady BindingSource :

Ovládací prvek BindingNavigator poskytuje uživatelské rozhraní pro procházení dat zobrazených aplikací systému Windows.

Vytvoření vazby k datům v ovládacím prvku DataGridView

U ovládacího prvku DataGridView je celá tabulka svázaná s tímto jediným ovládacím prvku. Když přetáhnete DataGridView do formuláře, zobrazí se také pruh nástroje pro navigaci v záznamech (BindingNavigator). V DataSet, TableAdapter, BindingSource, a BindingNavigator se objeví v zásobníku komponent. Na následujícím obrázku je přidán také TableAdapterManager , protože tabulka Customers má relaci s tabulkou Orders. Všechny tyto proměnné jsou deklarovány v automaticky generovaném kódu jako soukromé členy ve třídě formuláře. Automaticky vygenerovaný kód pro vyplnění DataGridView se nachází v obslužné rutině Form_Load události. Kód pro uložení dat pro aktualizaci databáze se nachází v Save obslužné rutině události bindingNavigator. Tento kód můžete podle potřeby přesunout nebo upravit.

GridView s Binding-navigátorem

Chování Objektu DataGridView a BindingNavigator můžete přizpůsobit kliknutím na inteligentní značku v pravém horním rohu každého z nich:

Inteligentní značky DataGridView a Binding Navigator

Pokud ovládací prvky, které vaše aplikace potřebuje, nejsou v okně Zdroje dat k dispozici, můžete přidat ovládací prvky. Další informace naleznete v tématu Přidání vlastních ovládacích prvků do okna Zdroje dat.

Položky z okna Zdroje dat můžete také přetáhnout na ovládací prvky, které už jsou ve formuláři, a vytvořit vazbu ovládacího prvku na data. Ovládací prvek, který je již vázán na data, má své datové vazby nastaveny zpět na položku, která byla naposledy přetažena na něj. Aby byly platné cíle přetažení, musí být ovládací prvky schopné zobrazit podkladový datový typ položky přetažené do ní z okna Zdroje dat . Například není platné přetáhnout položku s datovým typem DateTime do objektu CheckBox, protože CheckBox není schopen zobrazit datum.

Vytvoření vazby k datům v jednotlivých ovládacích prvcích

Když svážete zdroj dat s podrobnostmi, každý sloupec v datové sadě je vázán na samostatný ovládací prvek.

Připojit zdroj dat k detailům

Důležité

Všimněte si, že na předchozím schématu přetahujete z vlastnosti Objednávky tabulky Customers, nikoli z tabulky Objednávky. Vazbou na Customer.Orders vlastnost se navigační příkazy provedené v DataGridView projeví okamžitě v ovládacích prvcích podrobností. Pokud jste přetáhli z tabulky Orders, ovládací prvky budou stále svázané s datovou sadou, ale nebudou synchronizovány s DataGridView.

Následující obrázek znázorňuje výchozí ovládací prvky vázané na data, které jsou přidány do formuláře po svázání vlastnosti Orders v tabulce Customers s podrobnostmi v okně Zdroje dat.

Tabulka Objednávky propojená s podrobnostmi

Všimněte si také, že každý ovládací prvek má inteligentní značku. Tato značka umožňuje přizpůsobení, která se vztahují pouze na tento ovládací prvek.