C# 从子中继器获取父中继器
我正在写一个链接列表,分为年和月,如下所示:C# 从子中继器获取父中继器,c#,linq,C#,Linq,我正在写一个链接列表,分为年和月,如下所示: <ul> <li>2012</li> <ul> <li>July (12)</li> <li>June (8)<li> (etc) </ul> <li>2011</li> <li>July (7)</li> (etc) </li&g
<ul>
<li>2012</li>
<ul>
<li>July (12)</li>
<li>June (8)<li>
(etc)
</ul>
<li>2011</li>
<li>July (7)</li>
(etc)
</li>
</ul>
到目前为止,我成功地写出了这些年和月
接下来我需要做的是计算每月的项目数(即,从上面的HTML中填充括号中的数字)
要执行此操作(在repMonths\u ItemDataBound()期间),我需要知道repYears中继器当前所在的年份。这将给我当前月份和当前年份,从中我可以计算出计数
我可以轻松访问当月,因为我在ItemDataBond中,所以我可以使用e.Item.DataItem
那么,我如何从父中继器访问当前的DataItem值呢?我不确定我是否得到了这一点,因为您还没有显示代码 如果您在子中继器的
ItemDataBound
中,并且需要获取对父项的DataItem
的引用,则可以使用NamingContainer
属性:
在子中继器的ItemDataBound
中:
var repeater = (Repeater)sender;
var parentItem = (RepeaterItem)repeater.NamingContainer;
var parentDataItem = parentItem.DataItem;
我不确定我是否明白了,因为您没有显示代码 如果您在子中继器的
ItemDataBound
中,并且需要获取对父项的DataItem
的引用,则可以使用NamingContainer
属性:
在子中继器的ItemDataBound
中:
var repeater = (Repeater)sender;
var parentItem = (RepeaterItem)repeater.NamingContainer;
var parentDataItem = parentItem.DataItem;
谢谢,就是这样。NamingContainer是拼图中缺失的一块!只要按钮让我点击,我就会接受。谢谢,就是这样。NamingContainer是拼图中缺失的一块!只要按钮允许我点击,我就会接受。