我有一个数据网格视图,当单击行标题时,它会打开一个表单以显示学生详细信息。我想再次单击行标题以在关闭前一个表单的同时打开另一个表单。使用按钮退出很容易,但是不能通过单击数据网格视图行标题来使其工作。我希望我能正确解释。谢谢 ! 这是我打开表单的代码。
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
}
答案 0 :(得分:0)
好的,这就是你要做的。假设您单击标题时有2个表格要显示 创建这两种形式的实例作为类变量。
ViewStudentDet1 frm1;
ViewStudentDet2 frm2;
也是一个随click移动的开关。如果您单击的是同一标题,则需要一个变量来在您的条件之间进行切换
在构造函数中初始化它们
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()
}