我是C#的新手,我想按循环创建分层的TabControl,其中TabControl1包含TabPages A1和A2,然后在A1中创建TabControl2,其中TabControl2包含B1和B2,其中1,2,3表示循环索引。我希望下面有类似这样的图片。
private void button1_Click(object sender, EventArgs e)
{
int g = 0;
int h = 4;
while (g < h)
{
g++;
var parentTabControl = new TabControl { Dock = DockStyle.Fill };
parentTabControl.TabPages.Add("A" + g.ToString());
var page = parentTabControl.TabPages[0];
var childTabControl = new TabControl { Dock = DockStyle.Fill };
childTabControl.TabPages.Add("B" + g.ToString());
page.Controls.Add(childTabControl);
this.Controls.Add(parentTabControl);
}
}
但是我知道了
谢谢您的帮助!
答案 0 :(得分:0)
这里是您的功能
private void button1_Click(object sender, EventArgs e)
{
int g = 0;
int h = 3;
var parentTabControl = new TabControl { Dock = DockStyle.Fill };
while (g < h)
{
g++;
parentTabControl.TabPages.Add("A" + g.ToString());
var page = parentTabControl.TabPages[g-1];
var childTabControl = new TabControl { Dock = DockStyle.Fill };
childTabControl.TabPages.Add("B" + g.ToString());
page.Controls.Add(childTabControl);
}
this.Controls.Add(parentTabControl);
}
您需要从循环中删除父级。 您创建了4个父级,两个父级又是另一个父级。 并且如果想要3,则需要将h更改为3。 也许最好将此循环更改为for循环。