vb.net - 从外部 .vb 文件导入/调用类 vb.net
问题描述
我有一个相当大的 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
函数.vb
Partial Class MyFunctions
Public Function sum(a As Double, b As Double) As Double
return a+b
End Function
End Class
解决方案
当您不想完全限定类的命名空间时,可以使用Imports语句。如果另一个类与引用它的类在同一个命名空间中,则无需使用 Imports。请注意,您的示例代码具有应该存在于方法中而不是类主体中的功能。
'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
如果两个类在同一个命名空间中的示例:
Public Class MyFunctions
Public Sub SomeMethod()
'No need for Imports because they are in the same Namespace.
Dim objMyFunctions As New MyFunctions()
End Sub
End Class
Public Class MyFunctions
End Class
推荐阅读
- c# - 如何使我的 winform 项目可共享?(如何将数据库设置为项目文件夹?)
- collections - Marklogic:将集合的所有文档放入单个 json
- c++ - 在 Qt pro 文件中定义一个布尔值
- python - 是否可以使用 Tensorflow 2.x 高级 API 在 Tensorflow 1.x 训练的模型上运行推理
- json - Parsehub 网站元素仅在特定日期显示
- python - 发布表单已更改以查看
- r - ggtext:element_markdown 不适用于 position = "top"
- react-native - React Native CountdownCircleTimer 每秒重新渲染组件
- c# - 如何在赋值之前保留参考
- python - osx上的pytorch(仅限cpu)失败,找不到符号