Repeater控件使用总结 repeater控件样式

关于Repeater控件使用的一些总结,希望能对将来有机会看到这篇日志的同事有所帮助。
也是为了在自己开发有所遗忘的时候能够参考一下。
前言:
Repeater是一个迭代控件,什么是迭代控件呢?书本上的解释是这样的:如果一个ASP.NET数据绑定控件能够遍历一组数据,以将一个ASP.NET模板应用于每一个数据项,则将这个ASP.NET数据绑定控件称为迭代控件。至于其与列表控件(DropDownList,ListBox,CheckBoxList等,DataList除外)和视图控件(GridView,FormView,DetailsView等)的区别和比较在此就不赘述了。此处只是把Repeater这个控件做一个编程上的总结。1,首先,我们来预览一下Repeater空间的模板列表:
ItemTemplate 该模板确定了数据项的呈现样式
AlternatingItemplate该模板也是用来确定数据项的实现样式,与ItemTemplate定义的样式交替显示,而且在ItemTemplate与AlternatingItemTemplate中定义相同的数据绑定控件时需要将ID属性设为一致。
HeaderTemplate 该模板确定了控件页眉的呈现样式
FooterTemplate 该模板确定了控件页脚的呈现样式
SeparatorTe mplate 该模板定义了数据项间隔的呈现样式DataSource 获取或设置IEnumerable数据源,为填充列表提供任何数据
DataMember获取或设置绑定到该控件的DataSource中指定的表,平时所用较少(一般一个DataSoure中设置一个DataTable)。
DataSourceID获取或设置数据源控件的名称,一般在以申明的方式指定数据源时使用,为填充列表提供任何数据。
Repeater控件通过枚举被绑定的数据源中的数据项来填充Items集合,数据源中包含的所有数据对象都将映射为一个RepeaterItem对象,并插入到Items集合中。2,RepeaterItem控件的属性
DataItem返回绑定的数据对象,为绑定的Repeater项中返回NULL
ItemIndex返回所呈现数据项的索引based 0
ItemType返回Repeater呈现项的type包括(Header,Footer,Item,AlternatingItem,Separator)2,Repeater数据绑定的实现
DataBind,要想为Repeater控件生成HTML代码,并将其添加到输出流中以显示到最终的浏览器中,必须调用DataBind方法。此外Repeater控件还提供了一下常用事件。
ItemCommand该事件是Repeater中最常用的一个事件,单击Repeater控件中的按钮(Button或LinkButton)时触发该事件。
ItemCreate 在创建一个Repeater项时触发该事件,DataItem属性总是返回NULL
ItemDataBind将Repeater控件中的某个项绑定到基层数据以后触发该事件,ItemTemplate和AlternatingItemTemplate绑定项的DataItem属性不为NULL3,动态定制实现样式呈现在数据绑定之后需要生成HTML输出,这可以套用实现在各种Template中定制的模板,也可以更具绑定的数据动态生成HTML的样式输出。因此数据项的信息就需要作为动态生成HTML时候的输入参数,Container很好的提供这项功能。在生成HTML的函数中可以使用DataBinder.GetPropertyValue(Container.DataItem,"XXX");来得到指定数据对象(即该Container.DataItem)的指定属性的值。但前提是该属性需要申明为public并且至少有get访问器。否则将不起作用(例如该属性实现为一个字段)。一般.NET Framework 2.0实现的数据源控件都符合上述的要求。只有在定制自己的数据源控件时才需要注意上述问题。
举例:<ItemTemplate><%#GetStyleForItem(Container)%></ItemTemplate>public string GetStyleForItem(Control dataObj)//public是必须的
{
string value =DataBinder.GetPropertyValue(dataObj.DataItem,"XXX");
}4,获取子控件进行编程处理

获取子控件有两种方法可用:1,将Container作为参数传到后台函数中。
例如:<ItemTemplate><%#m_checkbox=(CheckBox)GetCheckBox(Container)%></ItemTemplate>public CheckBox GetCheckBox(Control container)
{
return(CheckBox)container.FindControl("DontrolID");
}

2,利用postback事件---ItemCommand来实现
protected void Repeater1_ItemCommand(objectsource,RepeaterCommandEventArgs e)
{
if(e.CommandName=="checkbox")//如果未指定CommandName属性则也可以用CommandSourc.Text属性。
CheckBox a =(CheckBox)e.Item.FindControl("ControlID");
//处理a控件。
}
5,数据源控件、数据绑定程序的叙述不再赘述。

  

爱华网本文地址 » http://www.413yy.cn/a/25101016/314522.html

更多阅读

MFC中进度条控件的使用方法 mfc进度条控件使用

MFC中进度条控件的使用方法——简介进度条控件是程序开发中基础控件之一,常用于显示程序的进度。在进行程序安装、文件传输时经常用到。其用法也比较简单固定。今天就和大家分享一下其简单的使用方法吧。^_^MFC中进度条控件的使用方

Telerik控件使用 telerik 控件

Telerik控件使用——简介Telerik控件真的很强大,推荐大家使用Telerik控件使用——方法/步骤Telerik控件使用 1、RadGrid添加序号列

三分屏课件制作方法 ppt怎么与视频同步播放

  德威课件大师是一款真正的三分屏课件制作(合成)系统,是德威录播大师的有效补充(三分屏录制)。它能轻松基于既有的视频文件和PPT、DOC、网页、图片等讲稿文件,打包成三分屏课件样式,右边为网页格式。  课件播放时,右侧网页可实时

怎样使用C#的月历MonthCalendar 控件 c panel控件的使用

怎样使用C#的月历【MonthCalendar】控件——简介 C#中的日历控件【MonthCalendar】是比较常用的一个控件,可以让用户对日期进行快速的查看和设置、也可以选择一段所需要的日期时间段。 下面介绍一下几种日历控件常用的使用方法。怎

如何使用C#TextBox控件 textboxdropdown控件

如何使用C#TextBox控件——简介在c#中TextBox控件做为最重要的控件,必须要下功夫吃透,学通。下面我给大家说说TextBox控件的三个重要属性如何使用C#TextBox控件——方法/步骤

声明:《Repeater控件使用总结 repeater控件样式》为网友千里故人稀分享!如侵犯到您的合法权益请联系我们删除