vb.net 两个窗体的数据

来源:百度知道 编辑:UC知道 时间:2024/06/05 14:59:52
form1中
Public a As String

Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
a = "sssssss"
Dim f2 As New Form2
f2.show()

form2中
Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim f1 As New Form1
Dim b As String
b = f1.a

TextBox1.Text = b
End Sub

为什么form2里的textbox1中没有任何东西显示呢?
刚学vb,呵呵

form2我这样写的可以的
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim b As String
b = Form1.a

TextBox1.Text = b

End Sub

Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim f1 As New Form1
Dim b As String
b = f1.a

TextBox1.Text = b
End Sub
把这段代码改成
Private Sub Form2_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim b As String
b = form1.a

TextBox1.Text = b
End Sub

个人认为你的
form2中

Dim f1 As New Form1

定义一个new form1 ,所以就不 form1中的a初始是没有值的,在Button1.Click
才a才会有值,
所以才会没有值