当我们在一个窗体f1中打开另一个窗体f2,而后我们又需要在f2中调用或操作f1中的某个控件的属性,我们该怎么做呢?这在实际的开发过程中是经常遇到的,比如在数据库应用程序开发中,在一窗体中的Dategridview中显示了所有记录信息,我们点击菜单打开另一窗体(这里的窗体都是普通窗体)查询,查询的结果在在Datagridview中动态的显示:现在我把解决的代码写道下面,当然方法很多,此知识其中之一:
public partial class Student_Find : Form { public static bool find = false; Student_Info student_info; public Student_Find(Student_Info sfrm) { InitializeComponent(); student_info = sfrm; } }//在打开的窗体中的写构造函数 传递含有Datagridview的那个窗体 private void tool_btn_find_Click(object sender, EventArgs e) { if (Student_Find.find == false)//只能打开一个窗体 { Student_Find.find = true; Student_Find sf = new Student_Find(this);//传递窗体 sf.Show(); } }
这样就可以实现我们需要的那种窗体间的通讯!