Enumerações e qualificação de nome (Visual Basic)

Normalmente, ao se referir a um membro de uma enumeração, você deve qualificar o nome do membro com o nome da enumeração. Por exemplo, para se referir ao Sunday membro da sua Days enumeração, você usaria a seguinte sintaxe:

X = Days.Sunday

Usando a instrução Imports

Você pode evitar usar nomes totalmente qualificados adicionando uma instrução Imports à seção declarações de namespace do código, como no exemplo a seguir:

Imports WindowsApplication1.Form1.Days
Imports WindowsApplication1.Form1.WorkDays

Uma Imports instrução importa nomes de namespace de projetos e assemblies referenciados e de dentro do mesmo projeto que o módulo no qual a instrução é exibida. Depois que essa instrução for adicionada, você poderá consultar seus membros de enumeração sem qualificação, como no exemplo a seguir:

X = Sunday

Ao organizar conjuntos de constantes relacionadas em enumerações, você pode usar os mesmos nomes constantes em contextos diferentes. Por exemplo, você pode usar os mesmos nomes para as constantes durante a Days semana nas enumerações WorkDays. Se você usar a Imports instrução com suas enumerações, deve ter cuidado para evitar referências ambíguas. Considere o seguinte exemplo:

Imports WindowsApplication1.Form1.Days
Imports WindowsApplication1.Form1.WorkDays
Public Sub New()
    ' Insert code to implement constructor.
    X = Monday
End Sub

Supondo que Monday seja um membro da Days enumeração e da Workdays enumeração, esse código gera um erro do compilador. Para evitar referências ambíguas ao fazer referência a uma constante individual, qualifique o nome constante com sua enumeração. O código a seguir refere-se às Saturday constantes e Days às enumerações WorkDays.

X = Days.Saturday
Y = WorkDays.Saturday

Confira também