0

我有一个 for each 循环,如下所示:

foreach (PCparts parts in items)
{
    MessageBox.Show(parts.PartName);
}

循环按以下顺序返回 4 个值:MOBO、GFX、CPU 和 RAM

现在我的问题是,有没有一种方法可以将一个特定的值存储到一个变量中,或者甚至只是将它显示在标签等其他地方?例如,将 GFX 存储到以后可以使用的变量中。

如果您还没有注意到,我将自己归类为新手,所以请不要太苛刻。我在尝试学习。

4

2 回答 2

3

由于您已items定义为List<PCParts>,因此您可以随时访问列表中的对象,只要items在范围内即可。

因此,例如,如果您有一个标签(lblName为了示例而调用它),那么您可以这样做:

lblName.Text = items[1].PartName;

items[1]列表中的第二个PCParts(GFX)在哪里。

从本质上讲,只要您拥有列表,您就已经存储了数据并且可以检索它。如果您正在寻找一个特定的项目,您将需要知道您正在寻找的项目。例如,在你的 for each 循环上构建:

for each (PCpart part in items)
{

    if (part.PartName == "GFX")
    {
        lblName.Text = part.PartName;
    }
}

您还可以使用类似的逻辑将选定的值存储在变量中以供进一步使用:

string selectedPartName = items[1].PartName;

如果不知道更多关于您正在尝试做什么,很难给出更明确的答案。

于 2013-04-22T02:16:37.243 回答
2

为了给 Tim 一个不同但同样有用的答案,如果它是 a而不是 a ,PCParts将更适合这种操作。您可以使用类似的表达式访问与键对应的值。DictionaryList"GFX"items["GFX"]

于 2013-04-22T02:21:40.530 回答