循环没有正确添加到列表

时间:2014-03-08 21:41:55

标签: c# list loops listbox add

我想将ScoresList中的所有对象列出到列表框中。

private void UpdateStudentScores_Load(object sender, EventArgs e)
{
    students.Fill();
    txtName.Text = students[index].WholeName;
    lstScores.Items.Clear();
    int s = 0;
    for (int i = 0; i < students[index].ScoresList.Count; i++)
        s = students[index].ScoresList[i];
        lstScores.Items.Add(s);
}

我想在我的列表中添加“s”四次,因为学生[index] .ScoresList.Count = 4.相反,我只显示列表中的最后一个元素。我哪里出错了?

1 个答案:

答案 0 :(得分:2)

你需要这个:

lstScores.Items.Add(students[index].ScoresList[i]);

或花括号:

for (int i = 0; i < students[index].ScoresList.Count; i++)
{
    s = students[index].ScoresList[i];
    lstScores.Items.Add(s);     
}

如果循环体中有多行,请使用花括号。你的循环运行四次,但只添加你的最后一项,因为s变得等于循环后的最后一项。当你不使用花括号时,只有循环之后的第一行被认为是循环体。所以循环后执行lstScores.Items.Add(s);