asp.net Repeater嵌套使用
后台.cs程序:
protected void objectiveCategory2_ItemDataBound(object sender, System.Web.UI.WebControls.RepeaterItemEventArgs e)
{
DataView dv = new DataView(this.dtCategory);
dv.RowFilter = "eloc_iparentid=" + this.dtCategory.Rows[e.Item.ItemIndex]["eloc_iparentid"].ToString();
Repeater tempRepeater = (Repeater)e.Item.FindControl("elo_sdescription");
tempRepeater.DataSource = dv;
tempRepeater.DataBind();
}
注意:其中 第2层的 OnItemDataBound="objectiveCategory2_ItemDataBound" 是重要部分,因为里层的repeater web里是认识不到的,只有在这指明了事件处理方法,才能触发后台程序里的方法。类似的也可以用这种方法多层嵌套,并能处理里面的事件。第二点在 aspx 指明事件的在后台程序,需要protected 来限定访问限制,如用private 就会出现限制访问的错误提示。