Remove &在列表框中移除

本文关键字:列表 Remove | 更新日期: 2023-09-27 18:05:55

Remove &RemoveAt in ListBox ?

Remove &在列表框中移除

首先,如果您有一个ListBox listBox;,那么listBox没有RemoveRemoveAt方法。应该是listBox.Items.Remove(...)或者listBox.Items.RemoveAt(...)。我假定您在System.Windows.Forms中使用的是ListBox

现在,RemoveRemoveAt的区别在于,取一个项来从列表中删除,而取一个索引

为了更清楚,让我们创建一个List<int> list = new List<int>(new int[] { 10, 20, 30, 40 });。因为所有在c# 中都是从零开始的,所以列表中索引0处的值是10,索引1处的值是20,以此类推。

List s和ObjectCollection s一样,也有RemoveRemoveAt方法。在我们的简单列表中,调用list.Remove(20);将删除它在列表中找到的第一个出现的20list将以元素{ 10, 30, 40 }结束,因为20被删除了。

如果不是在list上调用Remove,而是调用list.RemoveAt(1);,它会对列表做同样的事情。我们正在删除列表索引1处的元素:在本例中是20

我正在计算RemoveAt和Remove函数之间的差异。检查下面的代码片段:

       {
           while(ShowListBox.Items.Count != 0)
           {
               for(int i = 0; i < ShowListBox.Items.Count; i++)
               {
                   ShowListBox.Items.Remove(ShowListBox.Items[i].ToString());
               }
               while (ShowListBox.Items.Count > 0)
               {
                   ShowListBox.Items.RemoveAt(0);
               }
           }
       }

在上面的代码中,所有的数据被删除(文本,数字和列表框中的任何符号)

当使用Remove函数RemoveAt时,此操作失败。