从ListView控件中将项目添加到ListBox控件中



在我的项目中,我正在尝试将ListView控件的SelectedItems添加到ListBox控件中。添加后,ListView控件的选定项目应删除。我非常接近,但我认为我在代码中做错了什么,这在ListView控件中留下了单个选定的项目。

ListView --> lvEmpDetails
ListBox  --> lbxEmpName

我尝试了以下代码:

for (int intCount = 0; intCount < lvEmpDetails.SelectedItems.Count; intCount++)
{
     lbxEmpName.Items.Add(lvEmpDetails.SelectedItems[intCount].Text);  
     lvEmpDetails.SelectedItems[intCount].Remove();                  
}

请建议。

不要在相同的循环中删除这些项目。将它们添加到列表中,然后将其删除:

var itemsToRemove = new List<ListViewItem>();
for (int intCount = 0; intCount < lvEmpDetails.SelectedItems.Count; intCount++)
{
     lbxEmpName.Items.Add(lvEmpDetails.SelectedItems[intCount].Text);  
     itemsToRemove.Add(lvEmpDetails.SelectedItems[intCount]);
}
foreach (var item in itemsToRemove)
{
    item.Remove();                  
}

您可以采取其他方式:

for (int intCount = 0; intCount < lvEmpDetails.SelectedItems.Count; intCount++)
{
     lbxEmpName.Items.Add(lvEmpDetails.SelectedItems[intCount].Text);  
     lvEmpDetails.SelectedItems[intCount].Remove();    
     //Every time remove item, reduce the index           
     intCount--;   
}

最新更新