Dictionary <string, string> dictionary = new Dictionary <string, string> (); dictionary. add ("". "a"); dictionary. add ("B", "B"); BindingSource bs = new BindingSource (); bs. dataSource = dictionary; this. comboBox. dataSource = bs; this. comboBox. displayMember = "value"; this. comboBox. valueMember = "key"; this. comboBox. text = "B"; MessageBox. show (this. comboBox. selectedValue. toString (); // BThe ComboBox control is always confusing with several attributes:-> SelectedItem refers to the object of the currently selected item, rather than the text, which is usually used for Get-> SelectedText: indicates the string of the currently selected text in the combo box, it refers to the number of characters selected, not the number of items-> SelectedValue: return the value of the field specified by ValueMember-> Text: return the Text of the selected items, after the ComboBox control is bound to the data source, you can set the Text attribute to find the value of SelectedValue ComboBox to bind the Data source: