تبادل آیتم ها بین دو ListBox

برای انتقال آیتم های یک لیست باکس به لیست باکس دیگر و بالعکس، ابتدا یک فرم به صورت زیر طراحی کنید :
Move-ListBox-Items-To-Another-1

سپس خاصیت SelectionMode هر دو ListBox را برابر MultiSimple قرار دهید. این کار به شما اجازه می دهد که چند آیتم را انتخاب کنید :
Move-ListBox-Items-To-Another-2

سپس با تعریف متد زیر (که به صورت رنگی مشخص شده است) و فراخوانی آن در رویداد Click دو دکمه عمل انتقال اطلاعات را انجام دهید:

using System;
using System.Windows.Forms;

namespace MoveListBoxItems
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void MoveListBoxItems(ListBox Source, ListBox Destination)      
        {                                                                       
            ListBox.SelectedObjectCollection sourceItems = Source.SelectedItems;
            foreach (var item in sourceItems)                                   
            {                                                                   
                Destination.Items.Add(item);                                    
            }                                                                   
            while (Source.SelectedItems.Count > 0)                              
            {                                                                   
                Source.Items.Remove(Source.SelectedItems[0]);                   
            }                                                                   
        }                                                                       

        private void button1_Click(object sender, EventArgs e)
        {
            MoveListBoxItems(listBox1, listBox2);
        }

        private void button2_Click(object sender, EventArgs e)
        {
            MoveListBoxItems(listBox2, listBox1);
        }
    }
}

حال با اضافه کردن چند آیتم به یک لیست باکس و کلیک بر روی دکمه ها نتیجه را مشاهده نمایید :
Move-ListBox-Items-To-Another-3