Postupy: Vytvoření vyhledávací tabulky pro ovládací prvek Windows Forms ComboBox, ListBox nebo CheckedListBox
Někdy je užitečné zobrazit data v uživatelsky přívětivějším formátu ve formuláři Windows Form, ale ukládat data ve formátu, který je pro váš program smysluplnější. Například formulář objednávky pro jídlo může zobrazit položky nabídky podle názvu v seznamu. Tabulka dat, která zaznamenává objednávku, by ale obsahovala jedinečná čísla ID představující jídlo. Následující tabulky ukazují příklad uložení a zobrazení dat formuláře objednávky pro potraviny.
Tabulka OrderDetailsTable
OrderID | ItemID | Množství |
---|---|---|
4085 | 12 | 0 |
4086 | 13 | 3 |
ItemTable
ID | Name |
---|---|
12 | Brambor |
13 | Kuřecí |
V tomto scénáři jedna tabulka OrderDetailsTable ukládá skutečné informace, které se týkají zobrazení a ukládání. Ale aby se ušetřilo místo, dělá to poměrně kryptografickým způsobem. Druhá tabulka ItemTable obsahuje pouze informace o tom, které ID číslo odpovídá názvu jídla, a nic o skutečných objednávkách potravin.
ItemTable je připojen k ComboBox, ListBoxnebo CheckedListBox ovládací prvek prostřednictvím tří vlastností. Vlastnost DataSource
obsahuje název této tabulky. Vlastnost DisplayMember
obsahuje datový sloupec tabulky, který chcete zobrazit v ovládacím prvku (název potraviny). Vlastnost ValueMember
obsahuje datový sloupec této tabulky s uloženými informacemi (číslo ID).
OrderDetailsTable je připojen k ovládacímu prvku pomocí své vazby kolekce, přístup prostřednictvím DataBindings vlastnosti. Když do kolekce přidáte objekt vazby, připojíte vlastnost ovládacího prvku ke konkrétnímu datovému členu (sloupec čísel ID) ve zdroji dat ( OrderDetailsTable). Při výběru v ovládacím prvku je tato tabulka, kde je uložen vstup formuláře.
Vytvoření vyhledávací tabulky
Umožňuje přidat do ComboBoxformuláře ovládací prvek , ListBoxnebo CheckedListBox ovládací prvek.
Připojení ke zdroji dat.
Vytvořte relaci dat mezi těmito dvěma tabulkami. Viz Úvod k objektům DataRelation.
Nastavte následující vlastnosti. Dají se nastavit v kódu nebo v návrháři.
Vlastnost Nastavení DataSource Tabulka, která obsahuje informace o tom, které číslo ID odpovídá které položce. V předchozím scénáři je ItemTable
to .DisplayMember Sloupec tabulky zdroje dat, kterou chcete zobrazit v ovládacím prvku. V předchozím scénáři je "Name"
to (k nastavení v kódu použijte uvozovky).ValueMember Sloupec tabulky zdroje dat, která obsahuje uložené informace. V předchozím scénáři je "ID"
to (k nastavení v kódu použijte uvozovky).V procedurě zavolejte Add metodu ControlBindingsCollection třídy, která vytvoří vazbu vlastnosti ovládacího prvku SelectedValue na tabulku, která zaznamenává vstup formuláře. Můžete to také udělat v Návrháři místo v kódu, přístup k vlastnosti ovládacího prvku DataBindings v okně Vlastnosti . V předchozím scénáři je
OrderDetailsTable
to a sloupec je"ItemID"
.ListBox1.DataBindings.Add("SelectedValue", OrderDetailsTable, "ItemID")
listBox1.DataBindings.Add("SelectedValue", OrderDetailsTable, "ItemID");
Viz také
.NET Desktop feedback