日期:2014-05-18  浏览次数:20807 次

怎样一次性删除ListBox中带有指定字符的行?
想删除ListBox中带有"无效"的行。可是删除一行后,Itesm的索引号就变了,没办法追踪啊,所以删除不干净,哪位有好办法?
试过

  for (int i = 0; i < ListBox1.Items.Count; i++)
  {
  if (Convert.ToString(ListBox1.Items[i]).IndexOf("无效") != -1)
  {
  ListBox1.Items.RemoveAt(i);
  }
  }
上面的代码已经试过了,请不要再贴出来

------解决方案--------------------
探讨
想删除ListBox中带有"无效"的行。可是删除一行后,Itesm的索引号就变了,没办法追踪啊,所以删除不干净,哪位有好办法?
试过

for (int i = 0; i < ListBox1.Items.Count; i++)
{
if (Convert.ToString(ListB……

------解决方案--------------------
for (int i = 0; i < ListBox1.Items.Count; i++)
改为
for (int i = ListBox1.Items.Count-1; i >=0; i--)
------解决方案--------------------
探讨

for (int i = 0; i < ListBox1.Items.Count; i++)
改为
for (int i = ListBox1.Items.Count-1; i >=0; i--)

------解决方案--------------------
探讨

引用:
想删除ListBox中带有"无效"的行。可是删除一行后,Itesm的索引号就变了,没办法追踪啊,所以删除不干净,哪位有好办法?
试过

for (int i = 0; i < ListBox1.Items.Count; i++)
{
if (Convert.ToString(ListB……


你 倒着删

老多人问这个了