黑马程序员技术交流社区

标题: Repeater中ItemDataBound的求详解 [打印本页]

作者: 高宜    时间: 2012-7-24 09:24
标题: Repeater中ItemDataBound的求详解
  1. dataRowView rowView=(DataRowView)e.Item.DataItem;
  2. var  personRow=rowView.Row;
复制代码
不是很懂?求详解
作者: 许庭洲    时间: 2012-7-24 09:42
1,Repeater控件全是模板列不会像其它的数据绑定控件自动生成一堆的代码 ;
2,ItemDataBound应该是页面加载时触发,因为repeater控件是需要事先绑定数据源的。
3,在读取DataList数据时,若数据源是DataSet和DataTable时,可以用DataRowView view = (DataRowView)e.Item.DataItem语句来获取控件数据。

作者: 马林康    时间: 2012-7-24 09:50
原理:在生成datalist列时ItemDataBound触发,也就是说每生成一列就触发一次。这个事件的触发要早于itemcommand.  
作者: 夏威夷海风    时间: 2012-7-26 19:02
repeater数据绑定控件,主要是用来进行数据展示的,帮定一个数据源objectdatasource就可以了
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {

            DataRowView rowView = (DataRowView)e.Item.DataItem;
            var personRow =( Repeater数据绑定事件.Repeater.DAL.DataSet1.mytableRow )rowView.Row;
            if (personRow.age>30)
            {
                TextBox txtage = (TextBox)e.Item.FindControl("TextBox1");
                txtage.BackColor = Color.Red;
            }
        }

aspx里进行repeater展示:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1"
        onitemdatabound="Repeater1_ItemDataBound">
    <ItemTemplate><%#Eval("username") %><asp:TextBox ID="TextBox1" runat="server" Text='<%#Eval("age")%>'></asp:TextBox></ItemTemplate>
    </asp:Repeater>




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2