ASP.NET - Hashtable-object
- Vorige pagina WebForms ArrayList
- Volgende pagina WebForms SortedList
Het Hashtable-object bevat items weergegeven als sleutel/waardeparen.
Hashtable aanmaken
Het Hashtable-object bevat items weergegeven als sleutel/waardeparen. De sleutel wordt gebruikt als index, zodat de waarde snel kan worden opgehaald door de sleutel te zoeken.
Itemen worden toegevoegd aan de Hashtable via de Add() methode.
Hieronder wordt een Hashtable genaamd mycountries gecreëerd en worden vier elementen toegevoegd:
<script runat="server"> Sub Page_Load if Not Page.IsPostBack then dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Sweden") mycountries.Add("F","France") mycountries.Add("I","Italy") end if end sub </script>
Gegevenskoppeling
Het Hashtable-object kan automatisch tekst en waarden genereren voor de volgende knoppen:
- asp:RadioButtonList
- asp:CheckBoxList
- asp:DropDownList
- asp:Listbox
Om gegevens te koppelen aan een RadioButtonList-knop, maak dan eerst een RadioButtonList-knop aan in een .aspx-pagina (zonder enige asp:ListItem-elementen):
<html> <body> <form runat="server"> <asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" /> </form> </body> </html>
Voeg vervolgens het script toe om de lijst te bouwen:
<script runat="server"> sub Page_Load if Not Page.IsPostBack then dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Sweden") mycountries.Add("F","France") mycountries.Add("I","Italy") rb.DataSource=mycountries rb.DataValueField="Key" rb.DataTextField="Value" rb.DataBind() end if end sub </script> <html> <body> <form runat="server"> <asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" /> </form> </body> </html>
Vervolgens voegen we een subsysteem toe, dat wordt uitgevoerd wanneer de gebruiker op een item in de RadioButtonList-knop klikt. Wanneer een van de keuzevelden wordt aangeklikt, verschijnt er een tekst in de label:
<script runat="server"> sub Page_Load if Not Page.IsPostBack then dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Sweden") mycountries.Add("F","France") mycountries.Add("I","Italy") rb.DataSource=mycountries rb.DataValueField="Key" rb.DataTextField="Value" rb.DataBind() end if end sub sub displayMessage(s as Object,e As EventArgs) lbl1.text="Your favorite country is: " & rb.SelectedItem.Text end sub </script> <html> <body> <form runat="server"> <asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" onSelectedIndexChanged="displayMessage" /> <p><asp:label id="lbl1" runat="server" /></p> </form> </body> </html>
Opmerking:U kunt de sorteermethode voor de items die u wilt toevoegen aan de Hashtable niet kiezen. Gebruik de SortedList-object om de items alfabetisch of numeriek te sorteren.
- Vorige pagina WebForms ArrayList
- Volgende pagina WebForms SortedList