ASP.NET - Objeto ArrayList

O objeto ArrayList é uma coleção de itens que contêm um único valor de dados.

Exemplo

ArrayList DropDownList

ArrayList RadioButtonList

Criar ArrayList

O objeto ArrayList é uma coleção de itens que contêm um único valor de dados.

Adicionar itens ao ArrayList através do método Add():

O código a seguir cria um novo objeto ArrayList chamado mycountries e adiciona quatro itens:

<script runat="server">
Sub Page_Load
Se Não Page.IsPostBack então
  dim mycountries = New ArrayList
  mycountries.Add("China")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
Fim se
Fim sub
</script>

Por padrão, um objeto ArrayList contém 16 itens. Você pode ajustar o ArrayList para o tamanho final usando o método TrimToSize():

<script runat="server">
Sub Page_Load
Se Não Page.IsPostBack então
  dim mycountries = New ArrayList
  mycountries.Add("China")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
Fim se
Fim sub
</script>

Através do método Sort(), o ArrayList também pode ser ordenado por ordem alfabética ou numérica:

<script runat="server">
Sub Page_Load
Se Não Page.IsPostBack então
  dim mycountries = New ArrayList
  mycountries.Add("China")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
  mycountries.Sort()
Fim se
Fim sub
</script>

Para implementar uma ordenação invertida, aplique o método Reverse() após o Sort():

<script runat="server">
Sub Page_Load
Se Não Page.IsPostBack então
  dim mycountries = New ArrayList
  mycountries.Add("China")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
  mycountries.Sort()
  mycountries.Reverse()
Fim se
Fim sub
</script>

Vincular dados ao ArrayList

O objeto ArrayList 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 (por favor, note que não há nenhum elemento asp:ListItem):

<html>
<body>
<form runat="server">
<asp:RadioButtonList id="rb" runat="server" />
</form>
</body>
</html>

Então, adicione o script para construir a lista e ligue os valores da lista ao controle RadioButtonList:}

<script runat="server">
Sub Page_Load
Se Não Page.IsPostBack então
  dim mycountries = New ArrayList
  mycountries.Add("China")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
  mycountries.Sort()
  rb.DataSource = mycountries
  rb.DataBind()
Fim se
Fim sub
</script>
<html>
<body>
<form runat="server">
<asp:RadioButtonList id="rb" runat="server" />
</form>
</body>
</html>

Exibir este exemplo

O atributo DataSource do controle RadioButtonList é configurado para o ArrayList, que define a fonte de dados do RadioButtonList. O método DataBind() do controle RadioButtonList liga o controle ao conjunto de dados.

Notas:Os valores de dados são usados como atributos Text e Value do controle. Para adicionar um valor diferente do Text, pode-se usar o objeto Hashtable ou o objeto SortedList.