Vytvoření uživatelského ovládacího prvku model Windows Forms rozhraní .NET Framework, který podporuje jednoduchou datovou vazbu
Poznámka:
Datové sady a související třídy jsou staršími technologiemi rozhraní .NET Framework z počátku 2000, které aplikacím umožňují pracovat s daty v paměti, zatímco aplikace jsou odpojené 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ž se datové sady ukázaly jako velmi úspěšná technologie, doporučujeme, aby nové aplikace .NET používaly 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í.
Při zobrazování dat ve formulářích v aplikacích pro Windows můžete zvolit existující ovládací prvky z panelu nástrojů nebo můžete vytvářet vlastní ovládací prvky, pokud vaše aplikace vyžaduje funkce, které nejsou dostupné ve standardních ovládacích prvcích. Tento návod ukazuje, jak vytvořit ovládací prvek, který implementuje DefaultBindingPropertyAttribute. Ovládací prvky, které implementují, DefaultBindingPropertyAttribute mohou obsahovat jednu vlastnost, která může být svázána s daty. Tyto ovládací prvky se podobají nebo TextBox CheckBox.
Další informace o vytváření ovládací model Windows Forms chprvkůch
Při vytváření ovládacích prvků pro použití ve scénářích datových vazeb byste měli implementovat jeden z následujících atributů datové vazby:
Použití atributu datové vazby |
---|
Implementujte na DefaultBindingPropertyAttribute jednoduchých ovládacích prvcích, jako je například TextBox, který zobrazuje jeden sloupec (nebo vlastnost) dat. (Tento proces je popsaný na této stránce návodu.) |
Implementujte ovládací ComplexBindingPropertiesAttribute prvky, jako je například DataGridView, zobrazující seznamy (nebo tabulky) dat. Další informace najdete v tématu Vytvoření model Windows Forms uživatelského ovládacího prvku, který podporuje složitou datovou vazbu. |
LookupBindingPropertiesAttribute Implementujte ovládací prvky, jako je například ComboBox, které zobrazují seznamy (nebo tabulky) dat, ale také potřebují prezentovat jeden sloupec nebo vlastnost. Další informace najdete v tématu Vytvoření model Windows Forms uživatelského ovládacího prvku, který podporuje vazbu vyhledávacích dat. |
Tento názorný postup vytvoří jednoduchý ovládací prvek, který zobrazí data z jednoho sloupce v tabulce. Tento příklad používá Phone
sloupec Customers
tabulky z ukázkové databáze Northwind. Jednoduchý uživatelský ovládací prvek zobrazuje telefonní čísla zákazníků ve standardním formátu telefonního čísla pomocí MaskedTextBox a nastavení masky na telefonní číslo.
V tomto názorném postupu se naučíte:
Vytvořte novou aplikaci model Windows Forms (.NET Framework).
Přidejte do projektu nový uživatelský ovládací prvek .
Vizuální návrh uživatelského ovládacího prvku
Implementujte
DefaultBindingProperty
atribut.Vytvořte datovou sadu pomocí průvodce konfigurací zdroje dat.
Nastavte sloupec Telefon v okně Zdroje dat tak, aby používal nový ovládací prvek.
Vytvořte formulář pro zobrazení dat v novém ovládacím prvku.
Požadavky
K dokončení tohoto kurzu potřebujete úlohy vývoje desktopových aplikací .NET a ukládání a zpracování dat nainstalované v sadě Visual Studio. Pokud je chcete nainstalovat, otevřete Instalační program pro Visual Studio a zvolte Upravit (nebo Další>úpravy) vedle verze sady Visual Studio, kterou chcete upravit. Viz Úprava sady Visual Studio.
Tento názorný postup používá SQL Server Express LocalDB a ukázkovou databázi Northwind.
Pokud nemáte SQL Server Express LocalDB, nainstalujte ho buď ze stránky pro stažení SQL Serveru Express, nebo prostřednictvím Instalační program pro Visual Studio. V Instalační program pro Visual Studio můžete sql Server Express LocalDB nainstalovat jako součást úlohy ukládání a zpracování dat nebo jako jednotlivé komponenty.
Následujícím postupem nainstalujte ukázkovou databázi Northwind:
V sadě Visual Studio otevřete okno Průzkumník objektů SQL Serveru. (SQL Server Průzkumník objektů se instaluje jako součást úlohy ukládání a zpracování dat v Instalační program pro Visual Studio.) Rozbalte uzel SQL Serveru. Klikněte pravým tlačítkem na instanci LocalDB a vyberte Nový dotaz.
Otevře se okno editoru dotazů.
Zkopírujte do schránky skript Northwind Transact-SQL. Tento skript T-SQL vytvoří zcela novou databázi Northwind a naplní ji daty.
Vložte skript T-SQL do editoru dotazů a pak zvolte tlačítko Spustit .
Po krátké době se dotaz dokončí a vytvoří se databáze Northwind.
Vytvoření aplikace model Windows Forms
Prvním krokem je vytvoření aplikace model Windows Forms (.NET Framework):
V sadě Visual Studio v nabídce Soubor vyberte Nový>projekt.
V levém podokně rozbalte visual C# nebo Visual Basic a pak vyberte Plochu windows.
V prostředním podokně vyberte typ projektu aplikace model Windows Forms.
Pojmenujte projekt SimpleControlWalkthrough a pak zvolte OK.
Projekt SimpleControlWalkthrough je vytvořen a přidán do Průzkumník řešení.
Přidání uživatelského ovládacího prvku do projektu
Tento názorný postup vytvoří jednoduchý ovládací prvek pro vytvoření vazby dat z uživatelského ovládacího prvku. Přidejte položku uživatelského ovládacího prvku do projektu SimpleControlWalkthrough:
V nabídce Projekt zvolte Přidat uživatelský ovládací prvek.
Do oblasti Název zadejte PhoneNumberBox a klikněte na Přidat.
Do Průzkumník řešení se přidá ovládací prvek PhoneNumberBox a otevře se v návrháři.
Návrh ovládacího prvku PhoneNumberBox
Tento názorný postup rozbalí existující MaskedTextBox ovládací prvek PhoneNumberBox :
MaskedTextBox Přetáhněte panel nástrojů z panelu nástrojů na návrhovou plochu uživatelského ovládacího prvku.
Vyberte inteligentní značku na právě přetaženém obrázku MaskedTextBox a zvolte Nastavit masku.
V dialogovém okně Vstupní maska vyberte telefonní číslo a kliknutím na TLAČÍTKO OK nastavte masku.
Přidání požadovaného atributu datové vazby
Pro jednoduché ovládací prvky, které podporují vazby dat, implementujte DefaultBindingPropertyAttribute:
Přepněte ovládací prvek PhoneNumberBox do zobrazení kódu. (Na kartě Zobrazit nabídku, zvolte Kód.)
Nahraďte kód v phoneNumberBoxu následujícím kódem:
using System.Windows.Forms; namespace CS { [System.ComponentModel.DefaultBindingProperty("PhoneNumber")] public partial class PhoneNumberBox : UserControl { public string PhoneNumber { get{ return maskedTextBox1.Text; } set{ maskedTextBox1.Text = value; } } public PhoneNumberBox() { InitializeComponent(); } } }
V nabídce Sestavení zvolte Sestavit řešení.
Vytvoření zdroje dat z databáze
Tento krok používá průvodce konfigurací zdroje dat k vytvoření zdroje dat na Customers
základě tabulky v ukázkové databázi Northwind. Abyste mohli vytvořit připojení, musíte mít přístup k ukázkové databázi Northwind. Informace o nastavení ukázkové databáze Northwind naleznete v tématu Postupy: Instalace ukázkových databází.
Pokud chcete otevřít okno Zdroje dat, v nabídce Data klikněte na Zobrazit zdroje dat.
V okně Zdroje dat vyberte Přidat nový zdroj dat a spusťte průvodce konfigurací zdroje dat.
Na stránce Zvolit typ zdroje dat vyberte Databázi a pak vyberte Další.
Na stránce Zvolit datové připojení proveďte jednu z následujících věcí:
Pokud je datové připojení k ukázkové databázi Northwind k dispozici v rozevíracím seznamu, vyberte ho.
Výběrem možnosti Nové připojení spusťte dialogové okno Přidat nebo upravit připojení .
Pokud vaše databáze vyžaduje heslo, vyberte možnost zahrnout citlivá data a pak vyberte Další.
Na stránce Uložit připojovací řetězec na konfigurační soubor aplikace klepněte na tlačítko Další.
Na stránce Zvolit databázové objekty rozbalte uzel Tabulky.
Customers
Vyberte tabulku a pak vyberte Dokončit.NorthwindDataSet se přidá do projektu a
Customers
tabulka se zobrazí v okně Zdroje dat.
Nastavení sloupce telefonu na použití ovládacího prvku PhoneNumberBox
V okně Zdroje dat můžete nastavit, aby se ovládací prvek vytvořil před přetažením položek do formuláře:
Otevřete formulář 1 v návrháři.
Rozbalte uzel Zákazníci v okně Zdroje dat.
Klikněte na šipku rozevíracího seznamu na uzlu Zákazníci a v seznamu ovládacích prvků zvolte Podrobnosti .
Klikněte na šipku rozevíracího seznamu ve sloupci Telefon a zvolte Přizpůsobit.
V seznamu přidružených ovládacích prvků v dialogovém okně Možnosti přizpůsobení uživatelského rozhraní dat vyberte PhoneNumberBox.
Klikněte na šipku rozevíracího seznamu ve sloupci Telefon a zvolte PhoneNumberBox.
Přidání ovládacích prvků do formuláře
Ovládací prvky vázané na data můžete vytvořit přetažením položek z okna Zdroje dat do formuláře.
Chcete-li vytvořit ovládací prvky vázané na data ve formuláři, přetáhněte hlavní uzel Customers z okna Zdroje dat do formuláře a ověřte, zda je ovládací prvek PhoneNumberBox použit k zobrazení dat ve sloupci Telefon .
Ovládací prvky vázané na data s popisnými popisky se zobrazí ve formuláři spolu s pruhem nástrojů (BindingNavigator) pro navigaci v záznamech. NorthwindDataSet, CustomersTableAdapter a BindingSourceBindingNavigator zobrazí se v zásobníku komponent.
Spuštění aplikace
Stisknutím klávesy F5 spusťte aplikaci.
Další kroky
V závislosti na požadavcích vaší aplikace můžete po vytvoření ovládacího prvku, který podporuje datovou vazbu, provést několik kroků. Mezi typické další kroky patří:
Umístění vlastních ovládacích prvků do knihovny ovládacích prvků, abyste je mohli znovu použít v jiných aplikacích.
Vytváření ovládacích prvků, které podporují složitější scénáře datových vazeb Další informace najdete v tématu Vytvoření model Windows Forms uživatelského ovládacího prvku, který podporuje složitou datovou vazbu, a vytvoření model Windows Forms uživatelského ovládacího prvku, který podporuje vazbu vyhledávacích dat.