2017-01-10 97 views
-1
listBox2.Items.Add(listBox1.SelectedItem); 
listBox1.Items.Remove(listBox1.SelectedItem); 

此代码运行但我应该选择一个项目。我想知道如何不选择如何使用c将一个或多个值从一个列表框移动到另一个列表框#

+3

如果不然后选择你怎么知道哪个值将被感动? –

+2

没有选择,你如何确定你想要移动的是哪些值? –

+0

'listbox.items [指数]'一个专门的项目,可以不选择工作。 – Berkay

回答

3

如果你没有选择项,但只有索引可以使用RemoveAt,如果你想将其添加到你所需要的对象呢,所以你可以使用indexer其他列表:

object item = listBox1.Items[index]; 
listBox2.Items.Add(item); 
listBox1.Items.RemoveAt(index); 

如果你想添加的所有项目使用一个循环:

for (int i = 0; i < listBox1.Items.Count; i++) 
{ 
    listBox2.Items.Add(listBox1.Items[i]); 
} 
listBox1.Items.Clear(); 
+0

它不工作 – bakhshi

+0

@bakhshi:它有什么作用呢? –

+0

,但我想通过所有值 – bakhshi

0

路过这里的值是一个例子:

var i = 0;// let i as the index which you want it to be moved. 
var targetItem = listBox1.Items[i]; 
listBox2.Items.Add(targetItem); 
listBox1.Items.RemoveAt(i); 
+1

'listBox1.Items.RemoveAt(ⅰ);'它应该是这样的。 – Berkay

+0

哈哈,感谢您的修复。 –

相关问题