ASP.NET - Objeto Hashtable
- Página anterior ArrayList WebForms
- Próxima página SortedList WebForms
O objeto Hashtable contém itens representados por pares chave/valor.
Criar Hashtable
O objeto Hashtable contém itens representados por pares chave/valor. A chave é usada como índice e permite uma busca rápida no valor.
Adiciona itens ao Hashtable usando o método Add().
O código a seguir cria um Hashtable chamado mycountries e adiciona quatro elementos:
<script runat="server"> Sub Page_Load se Não Page.IsPostBack então dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Suécia") mycountries.Add("F","França") mycountries.Add("I","Itália") fim se fim sub </script>
Vinculação de dados
O objeto Hashtable pode gerar automaticamente texto e valor para os seguintes controles:
- asp:RadioButtonList
- asp:CheckBoxList
- asp:DropDownList
- asp:Listbox
Para vincular dados a um controle RadioButtonList, primeiro crie um controle RadioButtonList em uma página .aspx (sem elementos asp:ListItem)
<html> <body> <form runat="server"> <asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" /> </form> </body> </html>
Então adicionamos o script de construção da lista:
<script runat="server"> sub Page_Load se Não Page.IsPostBack então dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Suécia") mycountries.Add("F","França") mycountries.Add("I","Itália") rb.DataSource=mycountries rb.DataValueField="Key" rb.DataTextField="Value" rb.DataBind() fim se fim sub </script> <html> <body> <form runat="server"> <asp:RadioButtonList id="rb" runat="server" AutoPostBack="True" /> </form> </body> </html>
Então adicionamos um subrotina, que será executada quando o usuário clicar em algum item do controle RadioButtonList. Quando um botão de rádio for clicado, uma linha de texto aparecerá no label:
<script runat="server"> sub Page_Load se Não Page.IsPostBack então dim mycountries=New Hashtable mycountries.Add("C","China") mycountries.Add("S","Suécia") mycountries.Add("F","França") mycountries.Add("I","Itália") rb.DataSource=mycountries rb.DataValueField="Key" rb.DataTextField="Value" rb.DataBind() fim se fim sub sub displayMessage(s como Object, e como EventArgs) lbl1.text="Seu país favorito é: " & rb.SelectedItem.Text fim 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>
Notas:Você não pode escolher o método de ordenação dos itens adicionados ao Hashtable. Para ordenar os itens alfabeticamente ou numericamente, use o objeto SortedList.
- Página anterior ArrayList WebForms
- Próxima página SortedList WebForms