从窗体访问父窗体的控件,怎么做?
我不知道我的措辞是否恰当,这里我所说的从窗体和父窗体是这样的:
窗口A(父窗体)有一个Textbox,还有一个Button,该Button对应的Click事件里写有:
Dim form2 As New Form2
form2.Show
而form2(子窗体)上也有一个Button和Textbox,我希望当该Button按下时,该Textbox里显示窗口A的Textbox里的字符串,于是我在该Button对应的Click事件里这样写:
textbox1.text = Me.Parentform.textbox1.text
可惜啊,出错,根本就不能通过这样的方式“追溯”到声明并生成form2的那个form1,更不要谈访问form1上的什么控件和属性了。
我的问题:
1. 我理解的父窗体和子窗体的概念是不是不对?正确的理解是什么?.parent 以及 .parentform 属性究竟是干嘛使的?
2. 如果我希望实现上述功能,该如何做?
问题点数:20、回复次数:5Top
1 楼alcome(廋山鸿-关注VS2005和NET2.0)回复于 2006-05-04 13:14:00 得分 0
用my.forms.form1.textbox1.textTop
2 楼elecpiano()回复于 2006-05-04 18:53:04 得分 0
根本就没有my.forms这个东东啊!!Top
3 楼pslh(pslh)回复于 2006-05-04 21:28:38 得分 0
Dim form2 As New Form2
form2.Parentform=me
form2.Show
textbox1.text = ctype(Me.Parentform,A).textbox1.textTop
4 楼pslh(pslh)回复于 2006-05-04 21:35:28 得分 10
唉,错了,Parentform是readonly的.
可以这样:
在Form2中添加一个变量 public myForm1 as form1
然后:
Dim form2 As New Form2
form2.myForm1 =me
form2.Show
textbox1.text = Me.myForm1.textbox1.text
Top
5 楼szpcer(pcer)回复于 2006-05-04 23:28:33 得分 10
form1中的声明:
Dim form2 As New Form2
form2.Owner = Me
form2.Show()
form2中的Button事件:
Me.textbox1.text = CType(Me.Owner,Form1).textbox1.textTop




