[英]Add items to combo Boxes while referring to the combo box name by a string in c# Windows form
一直在寻找如何做到这一点的答案! 我基本上有 26 个名为 comboBox1 - comboBox26 的组合框,并且想要使用 for 循环向每个框添加项目,因此我需要将组合框称为字符串。 有点不好解释,这是我到目前为止的代码;
for (int n = 1; n <= 26; n++)
{
this.["comboBox"].Text.AddRange(new string[]
{"First Item", "second item", "third", "fourth", "fifth"});
}
所以在循环之后,所有 26 个组合框都应该用该字符串数组填充。 这和我尝试过的其他一切都会引发错误,似乎无法找到答案,任何帮助都会很棒!
谢谢
使用controls.Find
:
for (int n = 1; n <= 26; n++)
{
ComboBox c = Controls.Find("comboBox_"+n.ToString(),true)[0] as ComboBox;
c.Items.AddRange(new string[] {"First Item", "second item", "third", "fourth", "fifth"});
}
这是假设您已将组合框命名为comboBox_0
到comboBox_25
你可以使用这个:
var matches = this.Controls.Find("cmbname", true);
或者
ComboBox cmb = (ComboBox)this.Controls.Find("cmbname" + i, false).FirstOrDefault();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.