如何阻止多个表单打开?

时间:2013-04-05 20:45:42

标签: c# foreach listbox break selectedindex

这里发生的事情是,当我点击myListBox中某个学生的某个人打开他们的详细信息时,会显示一个显示其详细信息的窗体,窗口表格会显示第一个教师的详细信息。在myListBox中。

如果我点击myListBox中的一个教师,只会打开一个窗口表格,这就是我想要的。对于那些学生来说,我怎样才能让它像这样工作?我可以做一些类似的事情:

 if(myListBox.SelectedIndex == Student)
 {
    //code to open details form here
 }

这是我打开人员详细信息表格的方式。如果我没有使用说明myListBox.SelectedIndex == index的if语句。然后,每个人的详细信息表格都将打开。

private void openInfoButton_Click(object sender, EventArgs e)
{
            int index = 0;
            foreach (Student student in studentsList)
            {
                if (myListBox.SelectedIndex == index)
                {
                    PersonDetails studentDetails = new PersonDetails(student);
                    studentDetails.Show();
                    break;
                }
                index++;
            }

            foreach (Teacher teacher in teacherList)
            {
                if (myListBox.SelectedIndex == index)
                {
                    PersonDetails teacherDetails = new PersonDetails(teacher);
                    teacherDetails.Show();
                    break;
                }
                index++;
            }
}

1 个答案:

答案 0 :(得分:0)

如果查看sender对象,它会告诉您单击了哪个按钮。从那里你应该知道是否要显示学生或教师表格