ComboBox.SelectedValue not working

18,769

Solution 1

If you populate the combobox like this:

myComboBox.Items.AddRange(new string[]{"one","two"});

You must use the ComboBox.SelectedItem or the ComboBox.SelectedIndex property to set/get the selected item:

myComboBox.SelectedItem = "one"; //or
myComboBox.SelectedIndex = 0; 

The ComboBox.SelectedValue property is inherited from ListControl and must be used ONLY when:

  • the control is bound to a DataSource
  • and ValueMember and DisplayMember properties are definied.

Solution 2

A couple of different options:

1) change SelectedValue to SelectedIndex

myComboBox.SelectedIndex = 0; //your first item

Please ignore this, this is for asp.net

2) add in ListItems manualy

myComboBox.Items.Clear();
myComboBox.Items.Add(new ListItem() { Text = "one", Selected = true };
myComboBox.Items.Add(new ListItem() { Text = "two" };

Just make sure you don't have more than one item selected at a given time.

Share:
18,769
JS_Riddler
Author by

JS_Riddler

Updated on June 04, 2022

Comments

  • JS_Riddler
    JS_Riddler almost 2 years

    What is wrong with this code?

    myComboBox.Items.Clear();
    myComboBox.Items.AddRange(new string[]{"one","two"});
    myComboBox.SelectedValue = "one";
    

    It is showing up with nothing selected.