Enumerationen und Namensqualifikation (Visual Basic)

Wenn Sie auf einen Member einer Enumeration verweisen, müssen Sie normalerweise den Membernamen mit dem Enumerationsnamen qualifizieren. So würden Sie beispielsweise die folgende Syntax verwenden, um auf den Sunday-Member Ihrer Days-Enumeration zu verweisen:

X = Days.Sunday

Verwenden der Imports-Anweisung

Sie können die Verwendung vollqualifizierter Namen vermeiden, indem Sie dem Abschnitt mit den Namespacedeklarationen in Ihrem Code eine Imports-Anweisung hinzufügen, wie im folgenden Beispiel gezeigt:

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

Eine Imports-Anweisung importiert Namespacenamen aus referenzierten Projekten und Assemblys sowie aus dem Projekt, zu dem das Modul gehört, in dem die Anweisung vorkommt. Nachdem diese Anweisung hinzugefügt wurde, können Sie wie im folgenden Beispiel ohne Qualifikation auf Ihre Enumerationsmember verweisen:

X = Sunday

Indem Sie Gruppen verwandter Konstanten in Enumerationen strukturieren, können die gleichen Konstantennamen in verschiedenen Kontexten verwendet werden. Beispielsweise können Sie die gleichen Namen für die Wochentagskonstanten in den Enumerationen Days und WorkDays verwenden. Achten Sie darauf, mehrdeutige Verweise zu vermeiden, wenn Sie die Imports-Anweisung mit Ihren Enumerationen verwenden. Betrachten Sie das folgende Beispiel:

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

Wenn Monday sowohl ein Member der Days-Enumeration als auch ein Member der Workdays-Enumeration ist, generiert dieser Code einen Compilerfehler. Um mehrdeutige Verweise auf eine einzelne Konstante zu vermeiden, können Sie den Konstantennamen mit seiner Enumeration qualifizieren. Der folgende Code bezieht sich auf die Saturday-Konstanten in den Enumerationen Days und WorkDays:

X = Days.Saturday
Y = WorkDays.Saturday

Siehe auch