我有一个很大的VB.net代码,我正尝试将其拆分为不同的文件。我想创建一个包含不同功能的外部文件。我已经阅读了有关部分类文件的信息,但它对我不起作用。是否可以选择调用/导入vb.net文件并按照以下示例进行操作?
示例
Form1.vb
' Imports Functions.vb (How can I call the file containing the class?)
Public Class Form1
Dim a,b,y As Double
Dim calculate As New MyFunctions
a=1
b=1
y=calculate.sum(a,b)
End Class
Functions.vb
Partial Class MyFunctions
Public Function sum(a As Double, b As Double) As Double
return a+b
End Function
End Class
答案 0 :(得分:0)
如果您希望所有代码都可以使用所有功能,只需创建一个包含这些功能的模块即可。
如果只想将form1类拆分为单独的文件,则form1文件应包含类定义..
Partial Public Class Form1
要为要分离的位创建一个新文件,请创建一个新的类文件,并将默认定义更改为上述内容。
请注意,您可能还需要为每个文件添加Imports
行。
在我的旧项目中,我只有一个表单程序,但代码却分成了几个文件,例如ExcelFileHandling.vb,EmailHandling.vb等。它们实际上都是Form1的部分定义。轻松自在:-)
答案 1 :(得分:0)
当您不想完全限定类的命名空间时,可以使用Imports语句。如果另一个类与引用它的类在同一名称空间中,则无需使用Imports。 请注意,示例代码具有应在方法中而不是在类主体中存在的功能。
textarea {
border: none;
overflow: hidden;
margin-bottom: 10px;
padding: 0;
margin: 0 auto;
width: 90%;
min-height: 28px;
resize: none;
height: 37.5px;
text-align: center;
font-weight: 700;
font-size: 18px;
background: transparent;
}
两个类都在同一个命名空间中的示例:
'RootNamespace = Right click on project file and choose properties. You'll see it defined there.
Imports RootNamespace.SomeOtherNamespace
Namespace SomeNamespace
Public Class Form 1
Public Sub SomeMethod()
Dim objMyFunctions As New MyFunctions()
'If no Imports is used: As New SomeOtherNamespace.MyFunctions()
End Sub
End Class
End Namespace
Namespace SomeOtherNamespace
Public Class MyFunctions
End Class
End Namespace