将listbox里面选中的选项移到另一个listbox里面    如果已经选中的内容就不能再选~应该怎样弄啊?

解决方案 »

  1.   

    你取listbox选择项的内容
    然后在后面那个listbox中添加一项,内容为你取得的内容
    已经选中的内容就不能再选~ 取内容的时候你去和后面的所有项比较一下
    如果有就取消选择,
    或者你给已经选择的项一个标示
      

  2.   

    也可以在listbox移动项时消除原listbox中的项...说起来真别扭...自己理解吧...
      

  3.   

    我在那里写的是
    for(int i=0;i<listBox1.Items.Count;i++)
    {
          for(int j =0;j<listbox2.Items.Count;j++)
          {
               if(listbox2.Items[j]==listbox.Items[i])      
                {
                   //在这里替换 我也不是很清楚方法  我就这样写了
                        listbox1.items[i]=listbox2.items[j];
                }
          }
    }
      

  4.   

    ...为什么要这么替换
    if(listbox2.Items[j]==listbox.Items[i]) 
    {
    //都比较相同了,不用进行任何操作不就可以实现避免重复添加的目的了吗
    }
      

  5.   

     private void 选择(object sender, EventArgs e)
            {             
                string str = "";
                try
                {
                    str = listBox1.SelectedItem.ToString();
                }
                catch (System.Exception ex)
                {
                    string s = ex.Message;
                    return;
                }            
                listBox1.Items.Remove(str);
                listBox2.Items.Add(str);
            }        private void 取消(object sender, EventArgs e)
            {
                string str = "";
                try
                {
                    str = listBox2.SelectedItem.ToString();
                }
                catch (System.Exception ex)
                {
                    string s = ex.Message;
                    return;
                }
                
                listBox2.Items.Remove(str);
                listBox1.Items.Add(str);
            }
    原理就是将一个listbox的项先添加到另一个listbox中再把这个项删除