private void lstWaitingThreads_MouseDoubleClick(object sender, MouseButtonEventArgs e) { int Index = this.lstWaitingThreads.SelectedIndex; //definition of selected index //update list of Working MyThreadInfo SelectedInfo = ListDataWaiting.ElementAt(Index); SelectedInfo.SetWorking(); ListDataWorking.Insert(0, SelectedInfo); ListDataWorking[0].Run(); lstWorkingThreads.Items.Insert(0, SelectedInfo.InfoToString()); //update list of Waiting lstWaitingThreads.Items.RemoveAt(Index); ListDataWaiting.RemoveAt(Index); }