Закрытие текущей формы, чтобы открыть другую с помощью события щелчка DataGridView - PullRequest
0 голосов
/ 03 декабря 2018

У меня есть сетка данных, которая открывает форму для отображения сведений об ученике при нажатии на заголовок строки.Я хотел бы снова щелкнуть заголовок строки, чтобы открыть другую форму при закрытии предыдущей формы.Это легко с кнопкой выхода, но не может заставить ее работать, нажав на заголовок строки представления сетки данных.Я надеюсь, что объяснил это правильно.Спасибо !Вот мой код, чтобы открыть форму.

    private void dgvViewStudents_RowHeaderMouseDoubleClick(object sender,                                                 DataGridViewCellMouseEventArgs e) // click on dgv row
    {           
        int index = dgvViewStudents.CurrentRow.Index;
        DataRow drCurrent = dtViewStud.Rows[index];
        string StudentID = drCurrent[1].ToString();
        ViewStudentDet frm = new ViewStudentDet(StudentID);
        frm.Show(); // passes data to ViewStudentForm                       
    }

1 Ответ

0 голосов
/ 03 декабря 2018

хорошо, вот что ты собираешься делать.давайте предположим, что у вас есть 2 формы для отображения, когда вы щелкаете по заголовку, создаете экземпляр этих 2 форм как переменные класса.

ViewStudentDet1 frm1;
ViewStudentDet2 frm2;

также переключатель для перемещения с помощью щелчка .. так как вы нажимаете тот же заголовок и вам нужна переменнаячтобы переключаться между вашими условиями

в конструкторе, инициализируйте их

frm1 = new ViewStudentDet1();
frm2 = new ViewStudentDet2();

и создайте открытую переменную внутри форм, принимающих "StudentID"

при первом нажатии вы просто активируете ипоказать или показать это

if(swich ==//your condition){
  if(form2 is in Application.OpenForms collection){
     form2.hide();
  }
frm1.StudentID = //give an id
frm1.Activate()
frm1.DOSomething();
frm1.show()
}else{
 if(form1 is in Application.OpenForms collection){
     form1.hide();
  }
frm2.StudentID = //give an id
frm2.Activate()
frm2.DOSomething();
frm2.show()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...