2009-07-20 126 views
1

我有一个绑定到Repeater的住宿对象的列表,然后是一个嵌套Repeater,其中列出了各种出席者组[例如,默认,老年人,青少年]。这是所有输出都很好,值显示为LinkBut​​tons,当点击被发送到代码隐藏事件处理程序。ASP.NET嵌套中继器访问元素

下面是输出的一个例子给你一个图片[一些呃......有趣的与会者组名称]: The output from the nested Repeaters http://abunchofletters.co.uk/images/report-accommodation-section.png

在事件处理程序,我测试的对象参数,看看哪些中继器被发送,因为外部中继器的链接也可以被点击[所以住宿会被设置,但没有参加者组]。

有没有办法从包含当前点击的内部中继器的LinkBut​​ton的外部RepeaterItem获取HiddenField?例如从图片中,我点击女性部分的参加链接。因此,通过FindControl的EventArgs可以让我得到包含参加者组ID的隐藏字段,这很好,但我还需要住宿ID [知道它是温布尔登酒店Inn还是New Acc]

回答

0

原来,您只需访问盛大 -parent。我已经尝试过父母,但后来才意识到这只会让你远离内在的直放站。

所有这一切都需要的是:

repeaterArgs.Item.Parent.Parent.FindControl("hdnAccommodationID") as HiddenField;