2012-07-13 71 views
2

我正在使用c#的Windows窗体应用程序。我有两个列表框,即listbox1和listbox2,以及一个按钮,即btnall。 listbox1绑定使用数据绑定和列表框2是空的。我想复制listbox1中绑定到其他listbox2的所有项目,这是空的。点击btnAll_click事件。 我想这从一个列表框复制到其他列表框

private void btnAll_Click(object sender, EventArgs e) 
{ 
    listbox2.Items.AddRange(listbox1.Items); 
} 

但我正在逐渐data.datarowview而不是值。

回答

3

你可以遍历listBox1中的项目,并添加一个他们在这样的时刻:你想要什么那些

foreach (var item in Listbox1.Items) 
{ 
    listbox2.Items.Add(item.ToString()); 
} 

会?

+1

属性或索引 'System.Windows.Forms.ListBox.Items'不能分配给 - 它是只读的。我试着这个时得到这个错误this.listbox2.items = listbox1.items – siddharth 2012-07-13 08:39:50

+0

@siddharth你有没有尝试过我建议的新方法? – 2012-07-13 08:44:49

+1

尝试后,我得到system.data.datarowview – siddharth 2012-07-13 08:49:31

0

试试这个

listbox2.DataSource = listbox1.Items; 
+0

我得到同样的事情system.data.datarowview.not值 – siddharth 2012-07-13 08:38:14

0

如果通过DataSource属性尝试设置DataSourceDataMember来填充列表控件。不要忘记:

listBox.DisplayMember = "displayMember"; 
listBox.ValueMember = "valueMember"; 

别的试试这个:

var mylistSource = new List<string>(); 
foreach (var item in Listbox1.Items) 
{ 
    mylistSource.Add(item.ToString()); 
} 

listBox2.DataSource = mylistSource; 
相关问题