Compare Enum String

Hi,

I want to compare enum using string value.

i.e

Dim strAlpabet as string ="A"

Select  strAlpabet

      Case .... (A)
            msgbox "Order Number is 1"          

      Case .... (B)
            msgbox "Order Number is 2"          
End Select

How could I do it?

Thank you.
Public Enum Alphabet
 
        A = 1
        B = 2
        C = 3
 
    End Enum

Open in new window

LVL 1
emi_sastraAsked:
Who is Participating?
 
Wayne Taylor (webtubbs)Commented:
OK, try something like this....
        Dim strAlpabet As String = "C"
        Select Case CType([Enum].Parse(GetType(Alphabet), strAlpabet), Alphabet)
            Case Alphabet.A
                MsgBox(1)
            Case Alphabet.B
                MsgBox(2)
            Case Alphabet.C
                MsgBox(3)
        End Select

Open in new window

0
 
Wayne Taylor (webtubbs)Commented:
You don't need a Select Case statement in this case. Simply parse the string...

    Dim OrderNumber As Integer = Convert.ToInt32([Enum].Parse(GetType(Alphabet), "A"))

Wayne
0
 
emi_sastraAuthor Commented:
Hi webtubbs,

I need using select case.
Please see below code.

Thank you.
Select Case strTrsId
                Case mdlGlobalInv.FakturPenjualanTrsId.NilaiBrg, _
                     mdlGlobalInv.FakturPenjualanTrsId.BiayaAngkut, _
                     mdlGlobalInv.FakturPenjualanTrsId.NilaiDisc, _
                     mdlGlobalInv.FakturPenjualanTrsId.NilaiUangMuka
                    strFieldName = [Enum].GetName(GetType(mdlGlobalInv.FakturPenjualanTrsId), intEnumNumber) & strFieldNilaiKurs
                    strFieldNameToCheck = strFieldName
 
                Case mdlGlobalInv.FakturPenjualanTrsId.NilaiPPNRp, _
                     mdlGlobalInv.FakturPenjualanTrsId.NilaiPPhRp, _
                     mdlGlobalInv.FakturPenjualanTrsId.NilaiMaterai
                    strFieldName = [Enum].GetName(GetType(mdlGlobalInv.FakturPenjualanTrsId), intEnumNumber)
                    strFieldNameToCheck = strFieldName
 
            End Select

Open in new window

0
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

 
emi_sastraAuthor Commented:
Select Case CType([Enum].Parse(GetType(Alphabet), strAlpabet), Alphabet)

What does it mean? Convert to numeric?

Thank you.
0
 
Wayne Taylor (webtubbs)Commented:
No, it converts it to the equivalent enumeration value.
0
 
emi_sastraAuthor Commented:
Ok.

Thank you very much for your help.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.