2013-04-05 4 views
-1

Что здесь происходит, так это то, что когда я нажимаю на кого-то, кто является учеником в myListBox, чтобы открыть их детали, появится форма окна с указанием их деталей, и так будет отображаться форма окна, показывающая детали для первого Учителя, который находится в MyListBox.Как остановить открытие нескольких форм?

Если я нажму на Учителя в myListBox, для них откроется только форма окна, что я и хочу. Как я могу заставить его работать так, как это делается для людей, которые являются учениками? Возможно ли, чтобы я сделал что-то, что было бы угодно:

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

Вот как я открываю детали формы для людей. Если я не использовал оператор if, в котором указан индекс myListBox.SelectedIndex ==. Затем откроется форма для всех.

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

Ну, вы говорите об этом «studentDetails.Show()» внутри петли foreach ... что еще вы ожидали ..? – MethodMan

+0

Это называется «отладчик», используйте его, и вы увидите чудеса –

+0

@DJKRAZE, где еще я могу его поместить? если я создаю instace вне его, он не обнаружит ученика, поэтому не будет никаких подробностей для формы, отображаемой при ее открытии? Приносим извинения, если я ошибаюсь, и, пожалуйста, исправьте меня, если я нахожусь – Kash

ответ

0

Если вы посмотрите на sender объекта, то скажу вам, какая кнопка была нажата. Оттуда вы должны знать, следует ли отображать форму Студента или Учителя.