Enum in Klasse ansprechen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 1 Antwort in diesem Thema. Der letzte Beitrag () ist von VaporiZed.

    Enum in Klasse ansprechen

    Ich habe so etwas ähnliches:

    VB.NET-Quellcode

    1. Public Class meineKlasse
    2. Public Enum MeineEnumeration
    3. Anfang = 0
    4. Ende = 1
    5. End Enum
    6. Sub ausgabe(ByVal Werte As Integer)
    7. Debug.Print(Werte.ToString)
    8. End Sub
    9. End Class


    Und bekomme eine Warnmeldung
    Warnung BC42025 Zugriff des freigegebenen Members, konstanten Members, Enumerationsmembers oder geschachtelten Typs über eine Instanz; der qualifizierende Ausdruck wird nicht ausgewertet.


    VB.NET-Quellcode

    1. Module Module1
    2. Dim Ennu As New meineKlasse
    3. Public Sub test()
    4. Ennu.ausgabe(Ennu.MeineEnumeration.Anfang)
    5. End Sub
    6. End Module


    hier bei :

    VB.NET-Quellcode

    1. Ennu.MeineEnumeration.Anfang


    Wie sollte man so etwas richtig machen?
    Ich will ja nur beim Eintippen die bereits vorbelegten Konstanten verwenden, die ich sonst vergessen würde.
    Ersetze Ennu durch meineKlasse, also schreib meineKlasse.MeineEnumeration.Anfang. Du brauchst keine meineKlasse-Instanz, um an die Enumerationswerte ranzukommen. Die sind auch rein durch den Klassennamen zugänglich. Das will Dir die Warnung sagen.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.