Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 无法访问我的公用子系统_Vb.net_Visual Studio 2012_Subprocess_Public Method - Fatal编程技术网

Vb.net 无法访问我的公用子系统

Vb.net 无法访问我的公用子系统,vb.net,visual-studio-2012,subprocess,public-method,Vb.net,Visual Studio 2012,Subprocess,Public Method,我创建了一个公共类和一个公共子类,其中包含保存应用程序所需的所有代码,我希望能够在其他类中使用此子类。但是,当我键入Call Save.Save()时(第一个保存是类名,第二个保存是子名称),我得到了以下错误:“对非共享成员的引用需要对象引用。” 我做错了什么?这适用于公共变量 提前谢谢 下面是我的代码格式 小组: Public Class Save Public Sub Save() My.Settings.Variable = Class.Variable

我创建了一个公共类和一个公共子类,其中包含保存应用程序所需的所有代码,我希望能够在其他类中使用此子类。但是,当我键入Call Save.Save()时(第一个保存是类名,第二个保存是子名称),我得到了以下错误:“对非共享成员的引用需要对象引用。”

我做错了什么?这适用于公共变量

提前谢谢

下面是我的代码格式

小组:

Public Class Save
    Public Sub Save()
        My.Settings.Variable = Class.Variable
        My.Settings.Variable2 = Class.Variable2
        [...]
        My.Settings.Save()
        MessageBox.Show("Save successful", "Save")
    End Sub
调用SUB:

Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
        Call Save.Save()
    End Sub

要么屏蔽类和函数
Shared
,要么创建类的实例

实例

Dim _save As New SaveClass
_save.Save()
或共享版本

Public Shared Class SaveClass
  Public Shared Function Save(....
用法

SaveClass.Save(...

您不需要调用
Save
类-它是您创建Save对象的模板-参见DOnA的回答类本身不必是静态/共享的。