Я использовал решение Сорина Команеску, но столкнулся с проблемой при попытке получить выбранное значение. Мой комбинированный список был списком инструментов. Я использовал свойство combobox, которое предоставляет обычный combobox.
У меня был
Dictionary<Control, string> controls = new Dictionary<Control, string>();
Связующий код (решение Сорина Команеску - работает как брелок):
controls.Add(pictureBox1, "Image");
controls.Add(dgvText, "Text");
cbFocusedControl.ComboBox.DataSource = new BindingSource(controls, null);
cbFocusedControl.ComboBox.ValueMember = "Key";
cbFocusedControl.ComboBox.DisplayMember = "Value";
Проблема заключалась в том, что когда я пытался получить выбранное значение, я не понимал, как его получить. После нескольких попыток я получил это:
var control = ((KeyValuePair<Control, string>) cbFocusedControl.ComboBox.SelectedItem).Key
Надеюсь, это поможет кому-то еще!