导入在引用的项目和程序集中定义的命名空间或编程元素此外导入在同一个项目中定义的命名空间或元素
Imports [aliasname=] namespaceorImports [aliasname=] namespaceelement
各部分说明
- aliasname
可选导入别名或名称代码可按该名称而不是完全限定字符串来引用 namespace
- namespace
必选所导入命名空间的完全限制名称可以为嵌套到任意级别的命名空间的字符串
- element
可选命名空间中所声明编程元素的名称可以为任何容器元素
备注
每个源文件可以包含任意数量的 Imports 语句这些语句必须位于任何选项声明(如 Option Strict 语句)之后任何编程元素声明(如 Module 或 Class 语句)之前
只能在文件级别使用 Imports这意味着导入的声明上下文必须是源文件而不能是命名空间类结构模块接口过程或块
当需要使用在一个或多个命名空间中声明的同名项目时导入别名十分有用
请注意Imports 语句不会将其他项目和程序集中的元素提供给您的项目使用导入不会取代对引用的设置它只是使那些已经可用于项目的名称不再需要加以限定
规则
别名不应使用与 aliasname 相同的名称在模块级别声明成员如果这样做Visual Basic 编译器只对声明的成员使用 aliasname而不再将其识别为导入别名
命名空间名称可以提供单个命名空间名称也可以提供嵌套命名空间的字符串每个嵌套命名空间都通过句点 () 与下一个更高级别的命名空间分隔如下面的示例中所述
Imports SystemCollectionsGeneric
元素类型如果提供 element它必须表示容器元素即可包含其他元素的编程元素容器元素包括类结构模块接口和枚举
行为
范围 Imports 语句所提供元素的范围取决于是否指定了 element如果仅指定了 namespace则该命名空间中所有具有唯一名称的成员以及该命名空间内容器元素的成员无需限定即可使用如果既指定了 namespace 又指定了 element则只有该元素的成员无需限定即可使用
限定命名空间或容器元素外部的代码通常必须使用该命名空间或容器元素的名称来限定成员的名称除非您的项目要访问具有相同名称的另一个成员否则使用 Imports 语句后将不必进行此类限定在这种情况下您可以在每个 Imports 语句中指定一个 aliasname然后您只需导入别名即可限定具有相同名称的成员
示例
下面的示例将导入 MicrosoftVisualBasicStrings 类并给其分配一个别名 str该别名可用于访问 Left 方法
Place Imports statements at the top of your program
Imports str = MicrosoftVisualBasicStrings
Visual Basic
Class testClass
Sub showHello()
Display only the word Hello
MsgBox(strLeft(Hello World ))
End Sub
End Class
请注意前面的示例导入一个嵌套命名空间即 Microsoft 内 VisualBasic 中的 StringsMsgBox 函数 (Visual Basic) 在访问 Left 方法可以使用别名 str 而不是整个限定字符串 MicrosoftVisualBasicStrings