我确信这是一个简单的问题,但我没有足够的经验来知道答案。 :)
DataClass, Form1, Form2
我有公开课DataClass
,在一个单独的文件中,DataClass.vb
. In DataClass
我需要访问的数据存储在多个数组中。我有方法DataClass
这样我就可以访问数据。其中之一是GetName
。一切正常Form1
。我需要在另一种形式上访问数组中的相同数据,但我需要调用该类的新实例,因此当我调用方法来访问数组时,数据为空。
我见过一些线程提到创建一个singleton class
,但大多数都是关于我不太熟悉的C#。
最佳实践是什么?
您可以通过多种方式做到这一点。
其中之一涉及创建一个Module
然后创建实例化类的变量Public
模块内部:
Module MyGlobalVariables
Public MyDataClass As DataClass
End Module
现在,您项目中的所有表单都将能够访问DataClass
via MyGlobalVariables.MyDataClass
.
更好的方法是向 Form2 添加一个属性,该属性可以设置为DataClass
实例:
Public Property MyDataClass As DataClass
然后,你将实例化你的Form2
如下(假设您用于实例化的变量DataClass
in Form1
叫做_dataClass
):
Dim frm2 As New Form2()
frm2.MyDataClass = _dataClass
frm2.Show()
最后,另一种方法是重写构造函数Form2
并允许它接收类型的参数DataClass
。然后,你可以实例化Form2
as:
Dim frm2 As New Form2(_dataClass)
希望这可以帮助...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)