我有41个组合框,而不是编码每个组合combobox1.resettext(); bla bla如何缩短
答案 0 :(得分:2)
如果所有的组合框都包含在同一个容器中(意味着它们是表单的直接子代,而不是包含在面板或组框中),那么您可以使用此代码
foreach(ComboBox cbo in this.Controls.OfType<ComboBox>())
cbo.ResetText();
IEnumerable OfType允许遍历表单的Controls集合,仅提取指定类型的元素。
正如Schmelter先生在下面的评论中所解释的那样,这个代码循环在Controls集合中的每个组合中。如果你有一些你不想重置的组合,那么最好将这些组合移动到一个单独的容器中,如面板(带或不带边框),这样代码就不会影响它们
答案 1 :(得分:0)
您可以将所有组合框添加到数组中并遍历此数组。
foreach(var combo in myCombos){
combo.ResetText()
}
如果所有组合都在容器中,您可以通过以下方式获取它们:
var myCombos=yourContainer.Controls.OfType<ComboBox>();