0

On form load I load enum into combobox

private void Form2_Load(object sender, EventArgs e)
{
    List<VATMode> vatModes = Enum.GetValues(typeof(VATMode)).
         Cast<VATMode>().ToList();           
    cmbVatMode.DataSource = vatModes;
}

Now I want do assign value from cmbVatMode (drop down list) to my enum property MyCustomVatMode

I tried with MyCustomVatMode = cmbVatMode.SelectedValue; but it doesnt work.

panjo
  • 3,467
  • 11
  • 48
  • 82

1 Answers1

1

If you set DataSource to a list of VATMode, SelectedValue will return a reference of type object. that can be successfully casted to your enum. Next code demonstrates this.

VATMode MyCustomVatMode = (VATMode)cmbVatMode.SelectedValue;

For example next code will print to console enum every time you will change a combobox:

cmbVatMode.SelectedValueChanged += (s, a) => 
{
    VATMode selected = (VATMode)cmbVatMode.SelectedValue;
    Console.WriteLine(selected);
};
Ilya Ivanov
  • 23,148
  • 4
  • 64
  • 90