ASP.NET控件开发基础(19)

http://tech.ddvip.com   2007年09月02日    社区交流

内容摘要:上两篇讨论了基本数据绑定控件的实现步骤,基本上我们按着步骤来就可以做出简单的数据绑定控件了。过年前在看DataGrid的实现,本来想写这个的,但2.0出了GridView了,再说表格控件实现比较复杂,所以先放着。我们一起打开MSDN来看点别的,当然主题还是离不开数据绑定控件。

  二.列表绑定控件

  (1)抽象类ListControl及相关类

  像BaseDataList一样,ListControl也为列表控件提供的公共成员。根据我们的平时使用,列表控件都具有以下功能

  1.提供DataTextFormatString属性,可以对绑定数据文本进行格式化

  2.提供数据源属性DataSource和DataMember属性

  3.提供DataTextField属性和DataValueField属性,分别为列表控件数据项提供列表显示文本和值的数据源字段

  4.提供了ListItem,代表列表控件的数据项,此需要实现一个迭代,比数据绑定的做法更加灵活

  5.提供ListItemCollection,代表ListItem项集合

  6.提供SelectedIndex属性和SelectedItem属性进行索引

  7.提供SelectedIndexChanged事件并实现IEditableTextControl接口,实现TextChanged事件

  8.提供AutoPostBack属性当用户更改列表中的选定内容时可以向服务器自动回发

  其他还有2.0新增的一些功能,就别再介绍了,大家可以看看MSDN

  做了上面这么多工作,接下来的工作就比较的轻松了。

  (2)具体子类控件

  根据功能的不同,可以把内置的5个控件归为三类,为什么这么分,可以看看此类图

  1.ListBox和DropDownList 

  2.CheckBoxList和RadioButtonList

  3.BulletedList

  这三类控件从ListControl派生,并根据自身功能的不同进行了一些调整

  第一类实现最简单,ListControl本身为其默认实现了很多,其只需要根据自身需求,重写几个方法就可以了

  第二类控件为复合控件,其实现了IRepeatInfoUser接口,此接口任何重复项列表的列表控件实现的属性和方法,大多为空实现,主要实现了RenderItem方法。其还定义了控件的布局和现实方法并直接重写了Render方法,然后用RepeatInfo类来根据RepeatDirection的不同呈现项信息

责编:豆豆技术应用

正在加载评论...