2016-05-13 108 views
0

创建不同的唯一变量我有一个Windows窗体,我想在编译时与组合框的X数量稀少,X是不同数量。在一个循环

我有一个列表与组合框的所有值,但由于用户必须能够为每个组合框选择一个不同的项目我需要一个新的绑定列表,因为我不知道有多少我将不得不开始,我需要在循环中创建它们。为了做到这一点我想查找如何将一个字符串传递给一个变量名,因为它们都需要独特的名字,但我没有运气。

谁能告诉我怎么可以创建/在这个独特的名字环或实现自己的目标的另一种方式初始化的变量。

+3

为什么需要变量?只需将每个动态组合框数据源设置为列表的副本即可。 'dynamicCombo.DataSource = sourceList.ToList();'。 –

+0

你会发现这个帖子很有帮助[多个组合框绑定到单个列表 - 问题:当我选择一个项目,所有组合框更改](http://stackoverflow.com/questions/35864906/bind-multiple-combobox-to- a-single-list-issue-when-i-choose-an-item-all-comb/35865838#35865838)在那篇文章中,我描述了3个简单的解决方案将多个组合框绑定到一个列表中。 –

+0

@RezaAghaei,非常感谢!只要注意你的第一条评论就能解决我的难题。 – mathgenius

回答

0

你可以尝试创建一个组合框列表
并在运行时initialze它时,你知道X
然后将其添加到控件集合

List<ComboBox> l = new List<ComboBox>(); 
for(int i=0;i<X;i++) 
{ 
    ComboBox cb = new ComboBox(); 
    //add items to cb from your list 
    //cb.items.add("your item") 
    l.add(cb); 
    //they will be created on top of each other 
    //you can use this 
    cb.Location = new Point(0,i*20); 
    controls.add(cb); 
} 

,那么你可以通过使用列表
访问组合框

​​
+0

我明白了,您基本上将源列表的每个元素添加到组合框。感谢您的意见,但我相信@ Reza-Aghaei的回答/评论会更好。 – mathgenius