Referências e a instrução Imports (Visual Basic)

Você pode disponibilizar objetos externos para seu projeto escolhendo o comando Adicionar Referência no menu Projeto. As referências no Visual Basic podem apontar para assemblies, que são como bibliotecas de tipos, mas contêm mais informações.

A Instrução Imports

Os assemblies incluem um ou mais namespaces. Ao adicionar uma referência a um assembly, você também pode adicionar uma instrução Imports a um módulo que controla a visibilidade dos namespaces desse assembly dentro do módulo. A Imports instrução fornece um contexto de escopo que permite que você use apenas a parte do namespace necessária para fornecer uma referência exclusiva.

A instrução Imports utiliza esta sintaxe:

Imports [Aliasname =] Namespace

Aliasname refere-se a um nome curto que você pode usar dentro do código para se referir a um namespace importado. Namespace é um namespace disponível por meio de uma referência de projeto, por meio de uma definição dentro do projeto ou por meio de uma instrução anterior Imports.

O módulo pode conter qualquer número de instruções Imports. Eles devem aparecer após quaisquer Option instruções, se presentes, mas antes de qualquer outro código.

Observação

Não confunda referências de projeto com a Imports instrução ou a instrução Declare. As referências de projeto disponibilizam objetos externos, como objetos em assemblies, para projetos do Visual Basic. A Imports instrução é usada para simplificar o acesso a referências de projeto, mas não fornece acesso a esses objetos. A Declare instrução é usada para declarar uma referência a um procedimento externo em uma DLL (biblioteca de vínculo dinâmico).

Usando aliases com a instrução Imports

A Imports instrução facilita o acesso a métodos de classes eliminando a necessidade de digitar explicitamente os nomes totalmente qualificados de referências. Os aliases permitem atribuir um nome mais amigável a apenas uma parte de um namespace. Por exemplo, a sequência de retorno de carro/feed de linha que faz com que uma única parte do texto seja exibida em várias linhas faz parte do ControlChars módulo no Microsoft.VisualBasic namespace. Para usar essa constante em um programa sem um alias, você precisaria digitar o seguinte código:

MsgBox("Some text" & Microsoft.VisualBasic.ControlChars.CrLf &
       "Some more text")

Imports as instruções sempre devem ser as primeiras linhas que seguem imediatamente as Option instruções em um módulo. O fragmento de código a seguir mostra como importar e atribuir um alias ao Microsoft.VisualBasic.ControlChars módulo:

Imports CtrlChrs = Microsoft.VisualBasic.ControlChars

As referências futuras a esse namespace podem ser consideravelmente mais curtas:

MsgBox("Some text" & CtrlChrs.CrLf & "Some more text")

Se uma instrução Imports não incluir um nome de alias, os elementos definidos no namespace importado poderão ser usados no módulo sem qualificação. Se o nome do alias for especificado, ele deverá ser usado como um qualificador para nomes contidos nesse namespace.

Confira também