I want a ListBox full of items. Although, each item should have a different value.
So when the user selects an item and presses a button, a method will be called which will use the value the select item has.
I don’t want to reveal the item values to the user.
EDIT: This is not for ASP.NET, it’s for a Windows Forms application. I just thought the HTML example would be easy to read.
I have the inspiration from HTML:
<form>
<input type="radio" name="sex" value="Value1" /> Male
<br />
<input type="radio" name="sex" value="Value2" /> Female
</form>
This also allows me to use different values than what the user sees.
You can choose what do display using the DisplayMember of the ListBox.
When the user selects an item, you can read the value (or any other property) from the selected object:
Update: note that DisplayMember works only with properties, not with fields, so you need to alter your class a bit: