Enumerationstypen auswerten

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

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von kafffee.

    Enumerationstypen auswerten

    Hallo Community :)

    ich hab da mal wieder so ne kleine Anfänger-/Syntaxfrage, wo mir Tante Google und die MS Docs nicht wirklich weiterhelfen und auch mit schlichtem rumprobieren hab ichs nicht hinbekommen...

    Und zwar hab ich eine Enumeration in einer Klasse MIDIMapperDataViewModel:

    VB.NET-Quellcode

    1. Public Enum ControlType
    2. NoteOn
    3. NoteOff
    4. CC
    5. End Enum


    Jetzt möchte ich diesen ControlType abfragen:

    VB.NET-Quellcode

    1. If MIDIControl(0).ControlType = MIDIMapperDataViewModel.ControlType.CC Then
    2. ResetRow_Execute(obj)
    3. End If


    Aber da krieg ich gleich zwei Fehler, mit denen ich so rein gar nichts anfangen kann und obwohl mir IntelliSense sogar den Vorschlag hinter dem Gleich-Zeichen macht:

    BC42025: Access of shared member, constant member, enum member or nested type through an instance; qualifying expression will not be evaluated
    bzw. Zugriff des freigegebenen Members, konstanten Members, Enumerationsmembers oder geschachtelten Typs über eine Instanz, der qualifizierende Ausdruck wird nicht ausgewertet


    BC 30107: MIDIMapperDataViewModel.ControlType is an Enum type and cannot be used as an expression
    bzw. ...ist ein Enumerationstyp und kann nicht als Ausdruck verwendet werden.

    Weiss jemand vielleicht was damit im Busche ist?
    Du hast diese Enumeration in einer Klasse, aber keine Variable dafür angelegt, willst einfach dem "Enum" anstatt einer Variable den Wert zuweisen, was aus gutem Grund nicht geht. Hast du jemals ein Buch über VB gelesen? Deine Try&Error Sachen kosten dir auf Dauer mehr Zeit als mal richtig die Grundlagen zu lernen.

    VB.NET-Quellcode

    1. class abc
    2. Public Enum ControlType
    3. NoteOn
    4. NoteOff
    5. CC
    6. End Enum
    7. public variable as ControlType
    8. end class

    Zitat von mir 2023:
    Was interessiert mich Rechtschreibung? Der Compiler wird meckern wenn nötig :D
    Ah na klar, wenn man weiss wonach man suchen muss. Ich hatte in der Datenklasse doch tatsächlich ne Property mit diesem Typ. Ist bloss scho ne Weile her dass ich diese Klasse geschrieben hab hehe...

    Zu deiner Frage: Ja ich hab tatsächlich mal angefangen ein Buch über VB zu lesen, da war ich so um die 16...
    Hab sogar schon mal nen C-Kurs an der FH gemacht und auch ein Buch über Java fast ganz durchgelesen...

    Bin dann aber doch eher der Learning-By-Doing-Typ und das was ich momentan kann hab ich eigentlich alles durch rumprobieren, recherchieren oder auch nachfragen gelernt. Bei Büchern verlier ich erfahrungsgemäss schnell die Lust. Und naja ich hab ja Zeit...

    Aber trotzdem danke für den Tipp.