Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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 k ovládacím prvkům WPF. Chcete-li vytvořit tyto ovládací prvky vázané na data, můžete přetáhnout položky z okna Zdroje dat do návrháře WPF v sadě Visual Studio. Toto téma popisuje některé z nejběžnějších úloh, nástrojů a tříd, které můžete použít k vytváření aplikací WPF vázaných na data.
Obecné informace o vytváření ovládacích prvků vázaných na data v sadě Visual Studio naleznete v tématu Vytvoření vazby ovládacích prvků k datům v sadě Visual Studio. Další informace o datové vazbě WPF naleznete v tématu Přehled datových vazeb.
Úlohy spojené s vazbou ovládacích prvků WPF na data
Následující tabulka uvádí úlohy, které lze provést přetažením položek z okna Zdroje dat do návrháře WPF.
| Úkol | Více informací |
|---|---|
| Vytvořte nové ovládací prvky vázané na data. Svázání existujících ovládacích prvků s daty |
Vytvoření vazby ovládacích prvků WPF k datové sadě |
| Vytvoření ovládacích prvků, které zobrazují související data v relaci nadřazený-podřízený: když uživatel vybere nadřazený datový záznam v jednom ovládacím prvku, zobrazí jiný ovládací prvek související podřízená data pro vybraný záznam. | Zobrazení souvisejících dat v aplikacích WPF |
| Vytvořte vyhledávací tabulku , která zobrazuje informace z jedné tabulky na základě hodnoty pole cizího klíče v jiné tabulce. | Vytváření vyhledávacích tabulek v aplikacích WPF |
| Vázat ovládací prvek k obrázku v databázi. | Vytvoření vazby ovládacích prvků k obrázkům z databáze |
Platné cíle pro vyřazení
Položky v okně Zdroje dat lze přetáhnout pouze do platných míst pro umístění v prostředí návrháře WPF. Existují dva hlavní druhy platných cílů odstraňování: kontejnery a ovládací prvky. Kontejner je prvek uživatelského rozhraní, který obvykle obsahuje ovládací prvky. Například mřížka je kontejner a okno také.
Vygenerovaný kód a XAML
Když přetáhnete položku z okna Zdroje dat do návrháře WPF, Visual Studio vygeneruje XAML, který definuje nový ovládací prvek vázaný na data (nebo vytvoří vazbu existujícího ovládacího prvku na zdroj dat). Pro některé zdroje dat Visual Studio také vygeneruje kód ve skrytém souboru kódu, který naplní zdroj dat.
V následující tabulce je uveden kód XAML a kód, který Sada Visual Studio generuje pro každý typ zdroje dat v okně Zdroje dat .
| Zdroj dat | Vygenerování KÓDU XAML, který sváže ovládací prvek se zdrojem dat | Generujte kód, který vyplní zdroj dat |
|---|---|---|
| Datová sada | Ano | Ano |
| model EDM (Entity Data Model) | Ano | Ano |
| Služba | Ano | Ne |
| Objekt | Ano | Ne |
Datové sady
Když přetáhnete tabulku nebo sloupec z okna Zdroje dat do návrháře, Visual Studio vygeneruje XAML, který provede následující kroky:
Přidá datovou sadu a nový CollectionViewSource do prostředků kontejneru, do které jste položku přetáhli. Jedná se CollectionViewSource o objekt, který lze použít k navigaci a zobrazení dat v datové sadě.
Vytvoří datovou vazbu pro ovládací prvek. Pokud položku přetáhnete do existujícího ovládacího prvku v návrháři, XAML sváže ovládací prvek s položkou. Pokud položku přetáhnete do kontejneru, XAML vytvoří ovládací prvek, který byl vybrán pro přetaženou položku, a vytvoří vazbu ovládacího prvku na položku. Ovládací prvek se vytvoří uvnitř nového Grid.
Visual Studio také provede následující změny v souboru kódového zázemí:
- Vytvoří obslužnou rutinu události Loaded pro prvek uživatelského rozhraní, který obsahuje ovládací prvek. Obslužná rutina události vyplní tabulku daty, načte CollectionViewSource z prostředků kontejneru a pak vytvoří první datovou položku jako aktuální položku. Pokud již obslužná rutina Loaded události existuje, Visual Studio přidá tento kód do existující obslužné rutiny události.
Datové modely entit
Když přetáhnete entitu nebo vlastnost entity z okna Zdroje dat do návrháře, Visual Studio vygeneruje XAML, který provede následující akce:
Přidá nové CollectionViewSource do zdrojů kontejneru, do kterého jste položku přetáhli. Jedná se CollectionViewSource o objekt, který lze použít k navigaci a zobrazení dat v entitě.
Vytvoří datovou vazbu pro ovládací prvek. Pokud položku přetáhnete do existujícího ovládacího prvku v návrháři, XAML sváže ovládací prvek s položkou. Pokud položku přetáhnete do kontejneru, XAML vytvoří ovládací prvek, který byl vybrán pro přetaženou položku, a vytvoří vazbu ovládacího prvku na položku. Ovládací prvek se vytvoří uvnitř nového Grid.
Visual Studio také provede následující změny v souboru kódového zázemí:
Přidá novou metodu, která vrátí dotaz na entitu, kterou jste přetáhli do návrháře (nebo entitu obsahující vlastnost, kterou jste přetáhli do návrháře). Nová metoda má název
Get<EntityName>Query, kde\<EntityName>je název entity.Vytvoří obslužnou rutinu události Loaded pro prvek uživatelského rozhraní, který obsahuje ovládací prvek. Obslužná rutina události volá metodu
Get<EntityName>Query, která vyplní entitu daty CollectionViewSource , načte z prostředků kontejneru a pak vytvoří první datovou položku jako aktuální položku. Pokud již obslužná rutina Loaded události existuje, Visual Studio přidá tento kód do existující obslužné rutiny události.
Služby
Když přetáhnete objekt služby nebo vlastnost z okna Zdroje dat do návrháře, Visual Studio vygeneruje XAML, který vytvoří ovládací prvek vázaný na data (nebo vytvoří vazbu existujícího ovládacího prvku na objekt nebo vlastnost). Visual Studio ale negeneruje kód, který vyplní objekt služby proxy daty. Tento kód musíte napsat sami. Příklad, který ukazuje, jak to provést, naleznete v tématu Vytvoření vazby ovládacích prvků WPF k datové službě WCF.
Visual Studio vygeneruje XAML, který provede následující kroky:
Přidá nový CollectionViewSource ke zdrojům kontejneru, do kterého jste položku přetáhli. Jedná se CollectionViewSource o objekt, který lze použít k navigaci a zobrazení dat v objektu, který je vrácen službou.
Vytvoří datovou vazbu pro ovládací prvek. Pokud položku přetáhnete do existujícího ovládacího prvku v návrháři, XAML sváže ovládací prvek s položkou. Pokud položku přetáhnete do kontejneru, XAML vytvoří ovládací prvek, který byl vybrán pro přetaženou položku, a vytvoří vazbu ovládacího prvku na položku. Ovládací prvek se vytvoří uvnitř nového Grid.
Objekty
Když přetáhnete objekt nebo vlastnost z okna Zdroje dat do návrháře, Visual Studio vygeneruje XAML, který vytvoří ovládací prvek svázaný s daty (nebo vytvoří vazbu existujícího ovládacího prvku na objekt nebo vlastnost). Visual Studio však negeneruje kód pro vyplnění objektu daty. Tento kód musíte napsat sami.
Poznámka:
Vlastní třídy musí být veřejné a ve výchozím nastavení mají konstruktor bez parametrů. Nemůžou být vnořené třídy, které mají v syntaxi tečku. Další informace naleznete v tématu XAML a vlastní třídy pro WPF.
Visual Studio vygeneruje XAML, který provede následující kroky:
Přidá nové CollectionViewSource do prostředků kontejneru, do kterého jste položku přetáhli. Jedná se CollectionViewSource o objekt, který lze použít k navigaci a zobrazení dat v objektu.
Vytvoří datovou vazbu pro ovládací prvek. Pokud položku přetáhnete do existujícího ovládacího prvku v návrháři, XAML sváže ovládací prvek s položkou. Pokud položku přetáhnete do kontejneru, XAML vytvoří ovládací prvek, který byl vybrán pro přetaženou položku, a vytvoří vazbu ovládacího prvku na položku. Ovládací prvek se vytvoří uvnitř nového Grid.