我有一个带有4个标签页的标签页控件: 我需要为每个TabPage上的每个项目使用for循环。 下面的代码对我没有任何改变。
foreach (Control c in SubMenuTabControl.Controls)
{
if(c is Label)
c.Text="Hello";
}
答案 0 :(得分:2)
您需要进行两次迭代,一次是选项卡控件的选项卡页,然后一次在选项卡页本身的控件上。
例如:
foreach (TabPage tab in SubMenuTabControl.TabPages)
{
foreach (var control in tab.Controls)
{
var label = control as Label;
if (label == null) continue;
label.Text = "hello";
}
}
答案 1 :(得分:2)
正如我在评论中所说,tabControl
包含TabPages
,因此您需要嵌套的foreach
循环才能进入选项卡并进入labels
foreach (TabPage tabControl in SubMenuTabControl.Controls)
{
foreach (Control item in tabControl.Controls)
{
if (item is Label)
//your logic here
item.Text = "Hello";
}
}
答案 2 :(得分:0)
对于服务器端asp.net控件:
foreach (Control c in controlToCheck.Controls)
{
if (c is Label)
((Label)c).Text = "Hello";
}
用于html标签
foreach (Control c in controlToCheck.Controls)
{
if (c is LiteralControl)
((LiteralControl)c).Text = "Hello";
}