我正在尝试构建一个程序,该程序将允许我生成动态选项卡以及各种文本框、按钮和其他输入字段。我当前的构建能够通过单击按钮生成选项卡,并且在技术上也可以删除它们。
此时,我决定使用“删除”选项卡按钮;虽然它在技术上起作用(将自身添加到新生成的选项卡,然后删除一个空白选项卡),尽管我尽了最大努力手动更改它的父级,尝试所有删除类型,清除和处置。
它只是不会消失;至少可以说是令人沮丧的。我担心如果我不解决这个问题,一旦我尝试建立它们,它可能会影响其他输入字段。
这是创建我的新标签的逻辑:
charTabs.TabPages.Insert(charTabs.TabPages.Count - 1, dLabel);
charTabs.SelectedIndex = charTabs.TabPages.Count - 2;
tabManager( (charTabs.SelectedIndex.ToString() ), dLabel, "create");
这是我一直在努力的功能:
public void tabManager(string btnName,string tabName, string task)
{
Button delButton = new Button();
if (task == "create")
{
Controls.Add(delButton);
delButton.Name = btnName;
delButton.Tag = btnName;
delButton.Text = "Remove";
delButton.BringToFront();
delButton.Location = new Point(672, 512);// set to localation
delButton.Parent = this.charTabs.SelectedTab;
delButton.Visible = true;
delButton.Click += delButton_Click;//Assign function
//TODO Keep Generated Content on Tab when function is triggered
}
else if (task == "destroy")
{
charTabs.SelectedIndex = charTabs.TabPages.Count - 2;
//TODO Delete Tab's Content
charTabs.TabPages.Remove(charTabs.SelectedTab);
}
}
我非常感谢任何帮助,因为我现在几乎是凌晨 5:00,而且在周末的大部分时间里,我一直在努力解决这个问题。