Repeater数据控件的两个重要事件ItemDataBound 和 ItemCommand
2013-06-04 22:05
645 查看
1 ItemDataBound:数据绑定的时候(正在进行时)发生。
2 ItemCommand :用来响应Item模板中的控件的事件。
如下代码
aspx代码:
cs代码:
2 ItemCommand :用来响应Item模板中的控件的事件。
如下代码
aspx代码:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="LinqDataSource1" onitemcommand="Repeater1_ItemCommand" onitemdatabound="Repeater1_ItemDataBound"> <ItemTemplate> <span runat="server" id="span"> --------------------<asp:Button ID="addButon" CommandName="addButton" CommandArgument='<%#Eval("part_code") %>' runat="server" Text="库存+1" />-------------------<%#Eval("part_code") %>---------------<%#Eval("stock_num") %><br/><br/> </span> </ItemTemplate> </asp:Repeater>
cs代码:
//响应Item模板中控件的事件---------点击按钮,库存+1 protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e) { if (e.CommandName == "addButton")//判断这个Item里哪个控件响应的这个事件 { string part_code = (string)e.CommandArgument;//获取Item传过来的参数 //下面是通过Linq修改数据(即:使库存+1) DataClasses1DataContext dc = new DataClasses1DataContext(); var rs = dc.tbl_stock_dtl.Select(r => r).Where(r => r.part_code == part_code); if (rs.Count() > 0) { foreach (tbl_stock_dtl t in rs) { t.stock_num += 1; } } dc.SubmitChanges(); Repeater1.DataBind();//强行刷新数据,就是说,库存+1后,立马显示新的数据。 } } //当浏览器显示一条记录的时候,响应的事件---------库存为零的背景变红 protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e) { //判断Item的类型,因为Item有好几种:footer ,header ,Item.... if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { //把ItemData转换为对应的类对象 tbl_stock_dtl tsd = (tbl_stock_dtl)e.Item.DataItem; if (tsd.stock_num == 0) { //找到对应的控件,因为span是html的,所以,要加上runat=“server” HtmlGenericControl hgc = (HtmlGenericControl)e.Item.FindControl("span"); //为span动态添加一个属性:style,该属性的值为:background-color:red hgc.Attributes.Add("style", "background-color:red"); } } }
相关文章推荐
- Repeater数据控件的两个重要事件ItemDataBound 和 ItemCommand
- Repeater 的操作,数据的显示,绑定,动态取控件中的值和Repeater1_ItemCommand事件的相关用法
- Repeater 的操作,数据的显示,绑定,动态取控件中的值和Repeater1_ItemCommand事件的相关用法
- 如何在 Repeater 的事件中得到 当前 Item 绑定的数据
- Android布局设计之ExpandableList绑定XML数据构成级联、item布局页面的控件查找及配置child事件,自定义适配显示内容
- 如何在 Repeater 的事件中得到 当前 Item 绑定的数据?
- Repeater的ItemDataBound 事件中e.Item.DataItem 的数据类型
- 在数据绑定控件的DataBound事件中获取某绑定字段值
- 使用dataitem从DetailsView的databound事件中读取绑定的数据
- 其实repeater的ItemCreated和ItemCommand事件也蛮好用的。
- Repeater.ItemDataBound 事件
- 动态绑数据(Repeater控件HeaderTemplate和ItemTemplate)
- 其实repeater的ItemCreated和ItemCommand事件也蛮好用的。
- Repeater控件的ItemCreated事件实现权限与ItemCommand事件
- 在事件中引用aspx页面repeater控件所包含控件的数据
- DataItem,gridview,repeater数据控件数据绑定
- ListView集合中设置标记 setTag();方法带一个参数和两个参数的区别,以及设置标记时ViewHolder中的每一个属性控件都需要设置一次,否则在Item中每一个控件的点击事件中取出设置的标
- ListView应用------ListView控件显示List集合中的数据,并对Item响应选择事件(法一)
- Repeater 控件的 ItemCommand 事件
- [Repeater]三個事件的執行先後?ItemDataBound / ItemCreated / ItemCommand