如何把listBox1中选择的多项传到listBox2中 并且删除原listBox1中的该N项 ?注:WinForm  没有ListItem解决问题马上结帖

解决方案 »

  1.   

    SelectedObjectCollection selecteds = listBox1.SelectedItems
    for(int i = selecteds.Count - 1; i >= 0; i--)
    {
       listBox2.Items.Add(selecteds[i]);
       listBox1.Items.Remove(selecteds[i];
    }
      

  2.   

    SelectedObjectCollection不行都下班回家了吗?
      

  3.   

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

  4.   

    //上述程序做出如下修改
    //如果listBox2有初始数据的话,可以用数组记录添加到listBox2的项。
    //dotnet2003 winxp 测试通过
    for(int i=0; i< listBox1.SelectedIndices.Count;i++)
    {
    listBox2.Items.Add(listBox1.Items[listBox1.SelectedIndices[i]]);
    } for(int m=0; m< listBox2.Items.Count; m++)
    {
    listBox1.Items.Remove(listBox2.Items[m]);
    }
      

  5.   

    foreach(object o in listBox1.SelectedItems)
    listBox2.Items.Add(o);
    foreach(object o in listBox2.Items)
    listBox1.Items.Remove(o);
      

  6.   

    在foreach循环中是不能remove项的。问: 
    如何删除listBox中指定value的项?
      

  7.   

    ListBox lb = new ListBox() ;
    ListBox lb1 = new ListBox() ;
    foreach(string s in lb.Items)
    {
    lb.Items.Remove(s) ;
    lb1.Items.Add(s) ;
    }
      

  8.   

    listBox1.Items.Remove("要删除的值");
      

  9.   

    to: kdg2000(小刚) 请看清楚,我在for什么
      

  10.   

    foreach(objectoinlistBox2.Items)    ->listbox2
    listBox1.Items.Remove(o);          ->listBox1.
    这样当然可以remove了
      

  11.   

    以下代码没试通过:
    int c=listBox1.SelectedItems.Count;
    for (int i=0;i<c;i++)
    {
    listBox1.Items.Remove(listBox1.SelectedItems[0]);
    }这个问题真比较绕,以前就为这个问题费了好大劲儿.
      

  12.   

    传递引用.
    http://blog.csdn.net/zhzuo/archive/2004/04/05/22027.aspx
      

  13.   

    经过验证,绝对可用
           private void Add_Click(object sender, EventArgs e)
            {
                bool IsHave=false;
                for (int i = (SourceFile.Items.Count) - 1; i >= 0; i--)
                {
                    if (SourceFile.GetSelected(i)== true)
                    {
                        foreach (string li in TargetFile.Items)
                        {
                            if (li == SourceFile.Items[i].ToString())
                            {
                                IsHave = true;
                            }
                        }
                        if (!IsHave)
                        {
                            TargetFile.Items.Add(SourceFile.Items[i]);
                            SourceFile.Items.RemoveAt(i);
                        }
                        IsHave = false;
                    }
                }
            }