C#On_buttonClick,从列表框中删除空内容

时间:2009-12-23 16:20:27

标签: c#

如何设置按钮单击以仅从列表框中删除空内容并保持填充列表框。

示例:

Work  
Files  
here  

Armor

结果(on_button_click,更改列表框):

Work  
Files  
here  
Armor

任何帮助总是适用。

2 个答案:

答案 0 :(得分:2)

您需要向后循环ListBox中的项目并删除您不喜欢的项目。

例如:

for (int i = listBox.Items.Count - 1; i >= 0; i--) {
    if (String.IsNullOrEmpty(listBox.Items[i] as String))
        listBox.Items.RemoveAt(i);
}

循环需要倒退,否则所有即将到来的指数都会向下移动。

答案 1 :(得分:0)

也许是这样的?

如上所述,哎呀,你不能迭代一个集合并同时修改它。因此,我提出一些弗兰肯斯坦代码:

private void OnButtonClick(object sender, EventArgs e)
{
    List<String> removeMe = new List<String>();
    foreach(String x in listBox.Items)
    {
       if (String.IsNullOrEmpty(x))
       {
           removeMe.Add(x);
       }
    }

    foreach(String x in removeMe)
    {
          listBox.Items.Remove(x);
    }
}