我有一个嵌套中继器的情况下,子中继器嵌套在父中继器的ItemTemplate
中。父级的数据源是Dictionary<String, List<XYZ>>
。 在我使用的完整代码父直放站ItemDataBound
:嵌套中继器 - 在页脚的父行访问值
protected void rptParent_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
if (e.Item.DataItem is KeyValuePair<String, List<Object>>)
{
pair = (KeyValuePair<String, List<XYZ>>)e.Item.DataItem;
}
Repeater childRepeater = e.Item.FindControl("rptChild") as Repeater;
//bind the child repeater.
childRepeater.ItemDataBound += new RepeaterItemEventHandler(childRepeater_ItemDataBound);
childRepeater.DataSource = pair.Value;
childRepeater.DataBind();
}
}
protected void childRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Footer)
{
//Access the Parent row's Key value
}
}
有2个问题:
我可以使用隐藏域,同时结合母体并将其设置为关键值,然后检索子项中的隐藏字段值?
请问射击是如下的事件顺序:
一个。 Parent_ItemDataBound
第1行的Dictionary<Key, List<XYZ>>
i。 Child_ItemDataBound
对于每个父直放站的行1的子行
ii。 Child_ItemDataBound
儿童中继器的页脚
b。 Parent_ItemDataBound
第2排的Dictionary<Key, List<XYZ>>
i。 Child_ItemDataBound
对于每个父直放站的第2行的子行
ii。 Child_ItemDataBound
儿童中继器的页脚
等等。换句话说,Parent_ItemDataBound
之后是每个子行的Child_ItemDataBound
事件 - 循环重复吗?
非常感谢塞巴斯蒂安。 – Vikas 2012-02-03 16:05:10