0

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

4 に答える 4

4
    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()));

        }
    }

ただし、実際に在庫があるかどうかを確認する方法はわかりません。これは基本的に、コレクションを反復し、各アイテムを印刷するだけです。在庫の確認方法が指定されていません。

于 2013-03-01T11:09:04.297 に答える
0

これもうまくいきます:

MessageBox.Show("{0} not in stock", listBoxItem.ToString());
于 2013-03-01T11:10:03.670 に答える
0

アイテムがstokにもあるかどうかを確認するために使用する必要があると思われるforeachローカル変数でstring.formatメソッドを使用します。listBoxItem

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()));
        }
    }
 }        
于 2013-03-01T11:11:10.477 に答える
0

if 句内で listBoxItem ローカル変数を使用できます。

于 2013-03-01T11:11:34.230 に答える