【发布时间】:2012-11-29 00:05:21
【问题描述】:
我正在尝试获取子中继器的项目计数,但由于某种原因它一直为零。这是我的代码:父中继器是 rptDays。子中继器是 rptEditInfo。
protected void rptDays_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Repeater rptEditInfo = (Repeater)e.Item.FindControl("rptEditInfo");
...
DateTime thisDay = (DateTime)e.Item.DataItem;
DataSet ds = new DataSet();
...
ds = **bind valid dataset to this variable**
rptEditInfo.DataSource = MRSTable;
rptEditInfo.DataBind();
}
}
protected void rptEditInfo_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Header)
{
Repeater rpt2 = (Repeater)((Repeater)e.Item.Parent);
Repeater rpt1 = (Repeater)((Repeater)sender).Parent.FindControl("rptEditInfo");
int countTest1 = rpt2.Items.Count //always zero
int countTest2 = rpt1.Items.Count //always zero
}
}
我做错了什么?数据有效且已填充。我唯一能想到的是我没有正确访问子中继器。
【问题讨论】: