母版页控件列表只返回一些控件
本文关键字:控件 返回 列表 母版页 | 更新日期: 2023-09-27 18:09:18
我的ASP有一个小问题。网络页面。
我正试图从母版页代码内的母版页获得所有控件。
我使用以下代码
对子页面进行了此操作foreach (Control ctrl in ContentPlaceHolder1.Controls)
{
if (ctrl.GetType() == typeof(Label))
{
//Do Stuff...
}
}
但是当我尝试用
获取其他控件时foreach (Control ctrl in this.form1.Controls)
它不能完全工作。
我得到了我的3个标签,但不能访问其余的。
这是我的ASP代码的一部分
<div style="float: right;">
<ul class="main-language language-level main-language-level-0" >
<li><a href="">
<asp:Label runat="server" Text="Deutschland" ID="lbl_Language"/>
</a>
<ul class="language-level main-language-level-1">
<li>
<a href="?Lng=EN">
<asp:Label ID="lbl_English" runat="server" Text="United Kingdom" ForeColor="#0D679C" Font-Names="Century Gothic" />
</a>
<span>English</span>
</li>
<li>
<a href="?Lng=DE">
<asp:Label ID="lbl_German" runat="server" Text="Deutschland" ForeColor="#0D679C" Font-Names="Century Gothic" />
</a>
<span>Deutsch</span>
</li>
</ul>
<img class="menu-image" src="Images/arrow_languageselection.png" />
</li>
</ul>
<br />
<a href="CustomerServiceLogin.aspx?Lgn=22TR" runat="server" id="LogLink">
<asp:Label CssClass="ButtonOrange" runat="server" ID="lbl_Login" />
<asp:Label CssClass="ButtonOrange" runat="server" ID="lbl_Logoff" Visible="false" />
</a>
</div>
我能找到的标签只有lbl_Language
, lbl_English
和lbl_German
有人能解决这个问题吗?
真诚CarnVanBeck
如果您无法访问的标签嵌套在另一个控件中,那么当您遍历form1.controls时,它们将不会返回。您将需要一个递归解决方案来返回所有控件。
foreach (Control ctrl in this.form1.Controls)
{
if (ctrl.Controls.Count > 0)
{
// do recursive call
}
}