有没有办法如何在vb.net中的表单之间传递值?不使用公共变量

Lie*_*yec 5 vb.net

我有一个使用textBox和button的第二种形式的应用程序,我需要将textBox中的文本传递给第一个表单.我知道如何使用公共变量,但我想知道是否有另一种方法如何不使用公共变量.

cha*_*1es 5

是!

如果表单是同一解决方案的一部分,您只需写:

Dim MyVal1 As Integer = Form2.MyVal
Run Code Online (Sandbox Code Playgroud)

MyVal1以您编写的任何形式存在,而MyVal2来自Form2.只有表单具有正确的隐私设置,才能共享这些变量.

如果这两个表单是单独的应用程序的一部分,我知道传递变量的唯一方法是通过构造函数.

编辑:

在您使用文本框的情况下,您可以应用类似的解决方案:

Dim val As String = Form2.TextBox1.Text
Run Code Online (Sandbox Code Playgroud)


Ste*_*eve 2

您可以使用第二个表单上的 PUBLIC 属性来读取/写入信息到另一个表单。

您可以重载 NEW 方法以在声明期间传递变量。

您可以在第二种形式上创建公共子/函数并传递变量 byval 或 byref。

但是,我永远不会使用公共变量。那是糟糕的编程。