我对每个循环都有一个如下:
foreach (PCparts parts in items)
{
MessageBox.Show(parts.PartName);
}
循环按以下顺序返回4个值:MOBO,GFX,CPU和RAM
现在我的问题是,有没有办法将一个特定值存储到一个变量中,或者只是将它显示在其他地方,比如标签或其他什么?例如,将GFX存储到稍后可以使用的变量中。
如果您还没有注意到,我将自己归类为新手,所以请不要太苛刻。我正在努力学习。
答案 0 :(得分:3)
由于items
定义为List<PCParts>
,您可以随时访问列表中的对象,只要items
在范围内。
因此,例如,如果您有一个标签(为了示例而称之为lblName
),那么您可以这样做:
lblName.Text = items[1].PartName;
其中items[1]
是列表中的第二个PCParts
(GFX)。
基本上,正确的是你有列表,你已经存储了数据并且可以检索它。如果您正在寻找特定的项目,您需要知道您要查找的项目。例如,为每个循环构建你的作品:
for each (PCpart part in items)
{
if (part.PartName == "GFX")
{
lblName.Text = part.PartName;
}
}
您还可以使用类似的逻辑将选定的值存储在变量中以供进一步使用:
string selectedPartName = items[1].PartName;
如果不了解您想要做的事情,很难给出更明确的答案。
答案 1 :(得分:2)
为了给Tim提供一个不同但同样有用的答案,PCParts
如果是Dictionary
而不是List
,则更适合这种操作。您可以使用"GFX"
之类的表达式访问与items["GFX"]
键对应的值。