访问控件:嵌套转发器

时间:2013-04-22 14:34:43

标签: c# asp.net vb.net

如何获得位于另一个转发器中的文本框?

<asp:Repeater ID="Repeater1" runat="server">
 <ItemTemplate>
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
      <asp:Repeater ID="Repeater2" runat="server">
         ....
       </asp:Repeater>
  </ItemTemplate>
</asp:Repeater>

我在repeater2 ItemDataBound中,我需要获取TextBox1的值,我该怎么做。

 Protected Sub Repeater2_ItemDataBound(sender As Object, e As System.Web.UI.WebControls.RepeaterItemEventArgs)  

??

    End Sub

2 个答案:

答案 0 :(得分:4)

内部转发器的NamingContainer是外部RepeaterItem的{​​{1}},然后使用Repeater获取对FindControl的引用:

TextBox

答案 1 :(得分:1)

你应该可以这样做:

Dim tb = DirectCast(sender, WebControl).NamingContainer.FindControl("TextBox1")
相关问题