Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从子中继器获取父中继器_C#_Linq - Fatal编程技术网

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是拼图中缺失的一块!只要按钮允许我点击,我就会接受。