Form1和From2中都有一个DataGridView,DataGridView里有DataGridViewButtonColumn列,这个DataGridViewButtonColumn列用来显示子窗体Form3,在显示子窗体的同时从父窗体获取一些值(值分别来自Form1和From2里的DataGridView的当前行),两个DataGridView里的列是相同的,值不同而已。在子窗体的Load事件里怎样分别调用两个父窗体的值。我要实现的是,在Form1窗体打开Form3时,Form3的控件显示Form1里DataGridView对应的值;在Form2打开Form3时,Form3的控件显示Form2里DataGridView对应的值。请高手指点,谢谢!
我知道!但我要做到的是,如果从Form1打开Form3,就要传Form1对应的值;如果从Form2打开Form3,就要传Form2对应的值。我就不知道怎么传?
你这种需求,最简单的的方法使用是 属性,在FORM3中设置一个属性,并且在FORM3的LOAD中使用这个属性,在FORM1或FORM2中的窗口实例化后把DataGridView中的值赋给这个这个属性就行了。
string mystring = this.DataGridView1.CurrentRow.Cells[4].Value.Tostring();
form2 myf=new form2();
myf.show();
这样你就可以在FORM2中调用这个变量了。
this.textbox1.text=mystring
string cellValue = AllLinkmanGridView.SelectedCells[0].Value.ToString();
//这句是通过新实例化的窗体来传递父窗体DataGridview全部值
EditLinkmanForm elForm = new EditLinkmanForm(AllLinkmanGridView.SelectedCells, this);