Click here to Skip to main content
15,881,172 members
Articles / Programming Languages / Visual Basic
Tip/Trick

Quick And Dirty Option Lists using Enums

Rate me:
Please Sign up or sign in to vote.
5.00/5 (8 votes)
3 Jun 2014CPOL 32.1K   11   5
Using Enum to provide a quick and easy option lists

You might have a form that sets some options, and you need a quick and easy way to get the value from the option selected or determine what was selected.
 
Well this is achievable using Enum(erators):
 
Take this example;

VB
Private Enum ListOfChoices
    Yes
    No
    Possibly
    Never
    Pass
End Enum

It is possible to quickly and easily dump this list into a dropdown list combo box, and then quickly pull the value the user selected.
 

VB
Private Sub MainForm_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    'Populate a combo box with the enum options
    ComboBox1.Items.AddRange([Enum].GetNames(GetType(ListOfChoices)))
End Sub
 
Private Sub ComboBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedValueChanged
    'Retrieve the Enum Text Name from the Index selected
    MsgBox("You Selected: " & [Enum].GetName(GetType(ListOfChoices), ComboBox1.SelectedIndex))
End Sub

You could have just read the combobox selected value, but the point was demonstrating get a Enum String from the Enum value.
 
Both the Enum and the Combobox have 0 based index values for the item lists, so it is easy to work them together. This is just as applicable to list boxes, etc.
 
Cheap and easy. Smile | :)

WARNING! As it says it is Quick and Dirty, it could just as easily cause you a lot of problems - Refer to this article for indepth discussion around enumerating enum's; http://www.codeproject.com/Articles/129830/Enumeration-Types-do-not-Enumerate-Working-around

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Engineer
Scotland Scotland
I have been working in the Oil & Gas Industry for over 30 years now.

Core Discipline is Instrumentation and Control Systems.

Completed Bsc Honours Degree (B29 in Computing) with the Open University in 2012.

Currently, Offshore Installation Manager in the Al Shaheen oil field, which is located off the coast of Qatar. Prior to this, 25 years of North Sea Oil & Gas experience.

Comments and Discussions

 
GeneralMy vote of 5 Pin
Sergey Alexandrovich Kryukov3-Jun-14 5:30
mvaSergey Alexandrovich Kryukov3-Jun-14 5:30 
QuestionBe careful, everyone! It's not so simple in some cases Pin
Sergey Alexandrovich Kryukov3-Jun-14 5:09
mvaSergey Alexandrovich Kryukov3-Jun-14 5:09 
AnswerRe: Be careful, everyone! It works properly not in all cases. Pin
DaveAuld3-Jun-14 5:18
professionalDaveAuld3-Jun-14 5:18 
GeneralRe: Be careful, everyone! It works properly not in all cases. Pin
Sergey Alexandrovich Kryukov3-Jun-14 5:29
mvaSergey Alexandrovich Kryukov3-Jun-14 5:29 
GeneralReason for my vote of 5 Useful tip! Simple yet very practica... Pin
DrABELL22-Feb-11 16:37
DrABELL22-Feb-11 16:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.