asp.net 2.0 a c - 426
ASP.NET 2.0 a C# - tvorba dynamických stránek profesionálně i d="textBox" TextMode="MultiLine" Width="413px" /> < /small> < /EditItemTemplate>
429
Tato Šablona umožňuje uživateli, aby si vybíral zdvořilostní oslovení ze seznamu povolených titulů. Abyste seznam vytvořili, musíte se uchýlit k jistému triku - nastavit vlastnost DropDownList.DataSource na výraz vázání dat, který ukazuje na nějakou vaši vlastnost. Ta pak může vrátit příhodný zdroj dat s dostupným se znamem povolených zdvořilostních oslovení. Podívejte se na definici vlastnosti TitlesOfCourtesy v třídě webové stránky: p rotected s t r i n g [ ] TitlesOfCourtesy { get { r e t u r n new s t r i n g f ] { " M r . " . "Dr.". "Ms.", " M r s . " } ; }
>
POZNÁMKA Náš seznam osloveni není v žádném případě kompletní. Existuje také oslovení Miss, Lord, Lady, Sir, None a další. V aplikaci skutečného světa byste všechna zdvořilostní oslovení získali z nějaké databázové t abulky nebo konfiguračního souboru. Poslední krok zajišťuje naplnění rozevíracího seznamu, ale už neřeší úlohu, která je s tím spojena - jak zajis tit, aby se v rozevřeném seznamu vybralo takové zdvořilostní oslovení, které je shodné s aktuální hodnotou řádku, který se edituje. Zde je nejlepší přístup takový, že svážete Selcctedlndex s vaší vlastní metodou, která převezme aktuální osloveni a vrátí index této hodnoty. V našem příkladu tuto úlohu řeší metoda GetSelectedTitleQ. Převezme osloveni jako vstup a vrátí index této hodnoty v poli, které vrací TitlesOfCourtesy. p rotected i n t G e t S e l e c t e d T i t l e ( o b j e c t t i t l e )
<
r eturn Array.IndexOf(TitlesOfCourtesy. } Kód prohledá pole pomocí statické metody Array.lndexOff). Připomínáme, že musíte explicitně přetypovat oslovení na typ string. Je to proto, že metoda DataBinder.Eval() vrací objekt, a ten se předává do metody GetSelectedTitleO, nepředává se řetězec. Rozevírací seznam v akci vidíte na obrázku 10-15. title.ToStringO);
- Pro možnost psaní komentářů se přihlašte nebo zaregistrujte.
