foreach条件中的列表框项

时间:2013-03-01 11:04:54

标签: c# winforms listbox

我喜欢在foreach条件下获取当前项的字符串。

 public void checkStock()
 {
    foreach (var listBoxItem in listBox1.Items)
    {
        if (Convert.ToInt32(GetStock(listBox1.Items.ToString())) == 0)
        {
            MessageBox.Show("Item not in stock  ");
        }
    }
 }           

这样我就可以显示没有库存的物品的名称,如“

MessageBox.Show("{0}" +"not in stock" , listbox.items.ToString());

4 个答案:

答案 0 :(得分:3)

    public void checkStock()
    {
        foreach (var listBoxItem in listBox1.Items)
        {
            // use the currently iterated list box item
            MessageBox.Show(string.Format("{0} is not in stock!",listBoxItem.ToString()));

        }
    }

我不知道你应该怎么检查它是否真的有库存 - 这基本上只是迭代收集,并打印出每个项目。您没有指定如何检查库存。

答案 1 :(得分:0)

这也有效:

MessageBox.Show("{0} not in stock", listBoxItem.ToString());

答案 2 :(得分:0)

string.format方法与foreach局部变量listBoxItem一起使用,我猜应该用它来检查项目是否在stok中。

public void checkStock()
 {
    foreach (var listBoxItem in listBox1.Items)
    {
        if (Convert.ToInt32(GetStock(listBoxItem.ToString())) == 0)
        {
            MessageBox.Show(string.Format("{0} is not in stock!",listBoxItem.ToString()));
        }
    }
 }        

答案 3 :(得分:0)

您可以在if子句中使用listBoxItem局部变量。