快速业务通道

ASP.NET 2.0移动开发之列表控件

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-21
;这一章中通过具体的实例 来应用程序清单1中的代码,在这只是简要地介绍下实现静态列表的方法。其实 我们还可以以一种可视化的方式来实现静态列表,当然这要依靠Visual Studio 2005开发环境的支持。在Visual Studio 2005中,提供了一个非常有用的属性生 成器,使得你可以很方便地定义一个静态列表。只要你选择列表控件的智能标签 ,而后再选择"属性生成器"链接,就会弹出"属性生成器" 对话框。我们可以通过该对话框以可视化的方式产生程序清单1中的代码,如图6 所示。

ASP.NET 2.0移动开发之列表控件

图6 我们可以在该对话框中通过"创建新项"按钮来产生一个新的 列表项,而后在这个列表项对应的"项文本"和"值"文本框 处填写好列表项的文本信息和值信息,就创建好了一个列表项。如果你要调整各 个列表项之间的次序,可以点击上下箭头按钮来做出相应的调整。 在"属 性生成器"对话框的"常规"选项卡中,用户可以选择列表控件在 页面上的呈现形式。例如SelectionList列表控件支持下拉列表、列表框、单项 按钮、复选按钮和多选列表框等几种形式,开发人员可以根据实际的需要选择合 适的类型,如图7所示。

ASP.NET 2.0移动开发之列表控件

ASP.NET运行时是通过下面所描述的方式来解析服务器控件语法中的各个列表 项的。在你使用静态的方式构建一个列表时,ASP.NET实际上是针对这个列表中 的每个列表项,都创建一个System.Mobile.UI.MobileControls.MobileListItem 对象,并使用<Item> 标签中的Text和Value属性指定的文本信息和值信息对相 应的MobileListItem对象进行初始化,而后再将初始化后的MobileListItem对象 添加到一个System.Mobile.UI.MobileControls.MobileListItemCollection集合 对象中。我们可以在代码中通过SelectionList或List类的Items属性来访问这个 MobileListItemCollection集合对象。事实上,程序清单1和程序清单2的功能是 相同的,两种方式都可以生成静态列表,只不过程序清单1隐藏了静态列表的底 层的实现,更容易操作罢了。

程序清单2

protected void Page_Load(object sender, EventArgs e)
{
 if (!IsPostBack)
 {
SelectionList1.Items.Add(new MobileListItem("Dopoda", "P800"));
SelectionList1.Items.Add(new MobileListItem("Motorola", "A1200"));
SelectionList1.Items.Add(new MobileListItem("Nokia", "N70"));
SelectionList1.Items.Add(new MobileListItem("Samsung", "E638"));
 }
}

将列表控件与数据集合进行绑定

前文提过,除了使用静态的方式定义列表外,我们还可以将SelectionList 、List和ObjectList三个列表控件与特定的数据源进行绑定。这些列表控件支持 两种类型的数据源: System.Collections.IEnumerable和 System.ComponentModel.IListSource。.Net Framework中的许多集合类都是实 现了IEnumerator接口,为此这些类都支持简单的枚举功能。至于这些类的具体 实例有位于System.Collections命名空间的Array、ArrayList、Hashtable和 ListDictionary,还要一些和控件相关联的集合对象(例如前面的代码中使用到 的MobileListItemCollection)。如果你要查看所有实现了IEnumerator接口的集 合类的话,请自行参考MSDN帮助文档。

你还可以将列表控件与IListSource数据集合进行绑定。System.Data命名空 间中的两个类实现了IListSource这种接口,这两个类就是我们在ADO.NET中经常 使用的DataSet和DataTable。我们知道这两个类是相关联的,因为DataSet相当 于一个由多个DataTable组成的集合。DataSet类是ADO.NET构架中的一个主要组 件,并且DataSet还相当于在数据库中所检索到的数据在内存

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号