获取索引并将值添加到等效索引

时间:2013-07-13 13:52:49

标签: c# arrays listbox indexing

我想要的就是为索引增加价值。例如,我有一个列表框,我使用collections in the properties将字符串放入其中,如果我选择索引为0的第一个字符串,然后输出等价的价格..

喜欢这样;

Cheese cake = $200.00
chocolate cake =$100.00
strawberry cake =400.00

这是我的工作:

public void Computation(Form1 form1) {

        String price1 = form1.listBox1.SelectedIndex.ToString();
        form1.listBox2.Items.Add(price1);

    }

这输出索引,但我不知道如何将等价的价格放到该指数。请帮忙! :)

2 个答案:

答案 0 :(得分:1)

我假设您有一系列价格或其他方法来查询价格。例如,如果您的价格数组如下所示:

decimal[] prices = new decimal[] {200, 100, 400};

然后您可以按如下方式更改代码:

public void Computation(Form1 form1) {
    String price1 = prices[form1.listBox1.SelectedIndex].ToString();
    form1.listBox2.Items.Add(price1);
}

当然,prices必须包含与listBox1一样多的项目,否则您将获得“索引超出范围”的例外情况。

答案 1 :(得分:0)

如果您想恢复所选项目字符串的价格部分,您可以写

public void Computation(Form1 form1) 
{
     if(form1.listBox1.SelectedItem != null)
     {
         String row = form1.listBox1.SelectedItem.ToString();
         String[] parts = row.Split('=');
         form1.listBox2.Items.Add(parts[1]);
     }
}

警告:您的列表框字符串全部采用<cakename>=<price>格式,您的列表框SelectionModeSelectionMode.One