1
TabPage newpage = new TabPage();
Tabs.TabPages.Add(newpage);
newpage.Controls.Add(this.tableLayoutPanel41);
newpage.Location = new System.Drawing.Point(4, 26);
newpage.Name = "AddMaintAgreement" + offset;
newpage.Size = new System.Drawing.Size(736, 523);
newpage.TabIndex = 10;
newpage.Text = "Add Maintenance Agreement";
newpage.UseVisualStyleBackColor = true;
offset++;

基本上这就是我目前所拥有的,我在那里添加了偏移量,因为我认为它可能会影响我的问题。

基本上,这里的代码可以正常添加一个“addmaintagreement”选项卡。之后,只有最新的选项卡上有任何控件!

基本上我被难住了。任何帮助,将不胜感激。谢谢。

4

3 回答 3

2

我认为简短的例子应该留在这里:

        TextBox tmpLog = new TextBox(); // create new control of textbox type
        tmpLog.Text = "some text here";

        TabPage tb = new TabPage("my brand new tab"); //create tab
        tabControl.TabPages.Add(tb); // add tab to existed TabControl
        tb.Controls.Add(tmpLog); // add textBox to new tab

        tabControl.SelectedTab = tb;     // activate tab
于 2013-02-06T14:17:59.537 回答
1

从 TabPage 派生并在该派生类中添加所需的控件。然后使用您的派生类而不是 TabPage。

于 2009-04-06T00:45:31.907 回答
0

控件只能作为一个控件的父级,但看起来您正在尝试tableLayoutPanel41在每个TabPage实例中作为父级。您需要为选项卡的每个实例创建控件的新副本。有多种方法可以解决此问题。

  1. 以编程方式多次创建您的标签页及其内容。
  2. 将您的内容TabPage实现为您停靠在标签页上的用户控件。然后为每个页面重新创建一个,重复您的要求。
  3. 创建一个派生自TabPage实现标签页的类,并为每次使用创建该类的新实例。
于 2009-04-06T00:40:52.497 回答