, "Как к: Создайте Обрисованный в общих чертах текст" на MSDN, имеет всю информацию, в которой Вы нуждаетесь.
Понятно, используя предложение Пончика.
В классе формы:
private BindingList<PlantComboBoxItem> _plantList;
В методе загрузки:
_plantList = new BindingList<PlantComboBoxItem>(plantItems);
cboPlants.DataSource = _plantList;
В событии SelectedIndexChanged:
int selectedIndex = cboPlants.SelectedIndex;
_plantList.ResetItem(selectedIndex);
Спасибо!
Хмм ... не могли бы вы использовать BindingList
, как описано здесь ? Таким образом, вы можете просто изменить элемент в базовой коллекции и отобразить его в ComboBox
без необходимости добавлять или удалять что-либо из элемента управления.
You ' d необходимо иметь коллекцию, подобную этой, содержащую все ваши элементы для ComboBox
:
private BindingList<PlantComboBoxItem> plantComboBoxItems;
Затем в какой-то момент (например, при запуске программы) привяжите ее к ComboBox
:
cboPlants.DataSource = plantComboBoxItems;
Теперь вы можете просто изменить коллекцию напрямую:
plantComboBoxItems[cboPlants.SelectedIndex].doWhateverYouWant();
И изменения будут отражены в cboPlants
. Это то, что вы ищете?