我想将tabpages添加到tabcontrol1, 并且需要动态创建的页面
int a=10;
TabPage tabpage"+a+" = new TabPage();
我如何实现这一目标:
tabpage10
tabpage12
tabpage13
动态创建
答案 0 :(得分:6)
你不能,你不应该尝试。相反,要么有一个数组或列表(如果你的数字都是正数,有效地从0开始)或者Dictionary<int, TabPage>
用于更一般的映射。
每当你发现你有一个集合的值时,你应该找到一个集合类型 - 而不是很多不同的变量,这些变量碰巧有一个以a开头的名字共同前缀。
答案 1 :(得分:1)
您无法动态生成变量名称 - 也不是您想要的。相反,请考虑将标签页添加到集合中。
List<TabPage> tabs = new List<TabPage>();
tabs.Add(new TabPage()); // 0
tabs.Add(new TabPage()); // 1
tabs.Add(new TabPage()); // 2
答案 2 :(得分:0)
如果你在winforms中:
int a = 10;
tabcontrol1.TabPages.Add(new TabPage("text") { Name = "tabpage" + a });
a++;
然后访问
var page = tabcontrol1.TabPages[0];
或按名称
var page = tabcontrol1.TabPages["tabpage" + a];