A listrutan är en kontroll finns i alla Microsoft Integrerade utvecklingsmiljöer såsom Visual Basic.NET och C # . Den nedrullningsbara listan innehåller en lista över alternativ som slutanvändaren kan välja från . Listan kan fyllas från en extern fil , databas och kan även vara hårdkodad om värdena är statiska och inte förväntas förändras över tid . En av fördelarna med att använda en listruta är att det kan sökas för ett visst värde . Sökningen är ännu snabbare om du använder en " nyckel " och " värde " för att befolka listrutan från ett Dictionary-objekt . Instruktioner
1
Definiera en " Dictionary " objekt i C # -kod och tilldela en " nyckel " och ett " värde " till varje rad i ordboken . Den " viktigaste " och " värde " kan komma från en databas eller vara hårdkodade . Värdena är hårdkodade i exemplet nedan :
Ordbok lista = new Dictionary ( ) ; list.Add ( " knapp 1 " , " värde 1 " ) ; list.Add ( " knapp 2 " , " value 2 " ) ; list.Add ( " knapp 3 " , " value 3 " ) ; list.Add ( " knapp 4 " , " value 4 " ;) ;
2 Definiera " rullgardinsmenyn " objektet och ställ in " Dictionary " objekt med namnet " lista " som datakälla . Namnge rullgardinsmenyn " DDL . " Ställ in " DataTextField " av " ddl " till " nyckel " från " listan " och " DataValueField " till " värde " från " listan . "
ddl.DataSource = lista , ddl.DataTextField = " Key " , ddl.DataValueField = " Värde " , ddl.DataBind ( ) ;
3
Sök på " Dictionary " objekt med " containsKey " metoden . Till exempel kanske du vill söka igenom " Dictionary " för att hitta ett specifikt värde innan du lägger den till " rullgardinsmenyn . " " ContainsKey " är en av de snabbaste sökmetoder i " Dictionary " ; . objektet
om ( list.ContainsKey ( " knapp 2 " ) )
4
Sök på " rullgardinsmenyn " objekt med " FindByValue " metoden . Detta söksätt är skiftlägeskänsligt och söker för hela sökparametern i sin helhet .
Om ( ddl.Items.FindByValue ( " value 3 " ) ! = Null ) { ddl.SelectedValue = " värde 3 " ; }
p Om du angav " värdet " som sökparameter skulle null ha återvänt , eftersom det inte finns några värden i " DDL " som är lika med det bara ordet " värde " . , Addera