当前位置: 代码迷 >> VB Dotnet >> 如何在vb.net中的第二个窗口应用第一个窗口的值
  详细解决方案

如何在vb.net中的第二个窗口应用第一个窗口的值

热度:128   发布时间:2016-04-25 02:19:23.0
怎么在vb.net中的第二个窗口应用第一个窗口的值
我用vb.net做了两个窗口,在第一个窗口main中public str as new string,然后就在第一个窗口的main_load下编程让str=“小陶”, 为什么在第二个窗口引用不了str,   我用msgbox(main.str) 测试   显示为空()
  详细的过程是用reader(oledbdatareader)方法读取数据库中的值,  str=reader.item("实名"),在第一个窗口,也就是main中用msgbox(str) 会显示 “小陶”,第二个窗口中为什么不行,是我还有什么没做好吗?     
------解决方案--------------------
不知道你的代码怎么写的...form1的代码如下,其它的form是可以通过 form1.str 取值的

Public Class Form1
    Public str As String
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        str = "我是form1的变量"
    End Sub
End Class
------解决方案--------------------
直接定义变量就行了,不用new,这样应该在第二个窗体里面能取到值得呀!

//第一个窗体 Form1
 Public str As String
//第二个窗体 Form2
Form1.str


------解决方案--------------------
form1中:

 Public f As Form1
    Public str As String = "aaaa"
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        f = Me
    End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim m As New Form2
        m.Show()
        Me.Hide()
    End Sub

form2中:

 Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim s As String = Form1.f.str
    End Sub
  相关解决方案