A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 赵大宝 中级黑马   /  2012-10-26 16:46  /  1426 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


ArrayList对象是一个由包含单一数据值的数据项组成的集合。


--------------------------------------------------------------------------------

创建ArrayList
ArrayList对象是一个由包含单一数据值的数据项组成的集合。

数据项是用Add()方法添加到ArrayList的。

以下代码创建一个新的ArrayList对象,命名为mycountries,并加入4个数据项:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
  dim mycountries=New ArrayList
  mycountries.Add("Norway")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
end if
end sub
</script>


默认情况下,一个ArrayList对象包含16条记录。可以使用TrimToSize()方法限定ArrayList为其最终的实际大小:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
  dim mycountries=New ArrayList
  mycountries.Add("Norway")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
end if
end sub
</script>


还可以用Sort()方法为ArrayList按字母顺序或数字顺序排序:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
  dim mycountries=New ArrayList
  mycountries.Add("Norway")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
  mycountries.Sort()
end if
end sub
</script>


要想按倒序排序,在Sort()方法的后面使用Reverse()方法:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
  dim mycountries=New ArrayList
  mycountries.Add("Norway")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
  mycountries.Sort()
  mycountries.Reverse()
end if
end sub
</script>



--------------------------------------------------------------------------------

数据绑定到ArrayList
ArrayList对象对以下控件可以自动生成文本和值:

asp:RadioButtonList
asp:CheckBoxList
asp:DropDownList
asp:Listbox
要绑定数据到RadioButtonList控件,首先在一个.aspx文件中创建一个RadioButtonList控件(不带有任何asp:ListItem元素):

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


然后添加脚本,建立序列并在把序列中的值绑定到RadioButtonList控件:

<script runat="server">
Sub Page_Load
if Not Page.IsPostBack then
  dim mycountries=New ArrayList
  mycountries.Add("Norway")
  mycountries.Add("Sweden")
  mycountries.Add("France")
  mycountries.Add("Italy")
  mycountries.TrimToSize()
  mycountries.Sort()
  rb.DataSource=mycountries
  rb.DataBind()
end if
end sub
</script>
<html>
<body>
<form runat="server">
<asp:RadioButtonList id="rb" runat="server" />
</form>
</body>
</html>


RadioButtonList控件的DataSource属性被设置到ArrayList,它定义了RadioButtonList控件的数据源。RadioButtonList控件的DataBind()方法绑定数据源和RadioButtonList控件。

注意:数据值被同时应用于控件的Text和Value属性。要想赋给Value的值与Text不同,使用Hashtable对象或是SortedList对象。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马