我试图找出是否可以在ASP中的另一个控件内部控件,如下所示:
<asp:FormView ID="FormView1" runat="server" Width="630px" Height="496px">
<ItemTemplate>
<asp:Literal ID="ID" runat="server">Idnumber: </asp:Literal><%#Eval("ID") %>
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<asp:HyperLink ID="ID" runat="server"><a href="url/<%# Eval("ID") %>/<%#Eval("FILE")%>"> <%# Eval("FILE") %> </a></asp:HyperLink>
</ItemTemplate>
</asp:DataList>
</ItemTemplate>
</asp:FormView>
我可以访问DataList1控件吗?我一直在尝试,但我无法弄清楚,我应该能够访问嵌套控件,但我不能让它去做。
答案 0 :(得分:7)
模板标签内的控件无法在后面的代码中直接访问。相反,您应该使用FindControl
方法:
var dataList1 = (DataList)FormView1.FindControl("DataList1");
请注意,这可能不适用于页面生命周期的早期阶段(直到Page_Load我相信)。