Я, имеющий практически такую же проблему, как это:Обновление DataBound ComboBox
C# Update combobox bound to generic list
Однако, я пытаюсь изменить отображаемые строки; не добавлять, удалять и не сортировать. Я попробовал решение BindingList, указанное в упомянутом вопросе, но это не помогло. Я вижу, что свойство DataSource от combobox корректно обновляется, когда я редактирую элементы, но содержимое, отображаемое в combobox, не относится к свойству DataSource.
мой код выглядит следующим образом:
mSearchComboData = new List<SearchData>();
mSearchComboData.Add(new SearchData("", StringTable.PatientID));
mSearchComboData.Add(new SearchData("", StringTable.LastName));
mSearchComboData.Add(new SearchData("", StringTable.LastPhysician));
mSearchComboData.Add(new SearchData("", StringTable.LastExamDate));
mBindingList = new BindingList<SearchData>(mSearchComboData);
SearchComboBox.Items.Clear();
SearchComboBox.DataSource = mBindingList;
SearchComboBox.ValueMember = "Value";
SearchComboBox.DisplayMember = "Display";
...
Когда я пытаюсь обновить содержимое я делаю следующее:
int idx = SearchComboBox.SelectedIndex;
mBindingList[idx].Display = value;
SearchComboBox.Refresh();
EDIT ::
RefreshItems кажется частным методом , Я просто получаю сообщение об ошибке:
«„System.Windows.Forms.ListControl.RefreshItems()“недоступен из-за его уровня защиты»
ResetBindings не имеет никакого эффекта.
я попытался около 13 различных методов, чтобы получить выпадающий на моей форме обновления, то наконец-то нашел это решение. Хорошо написано и работало как шарм. Благодаря! –