DataGridViewには、DataGridViewComboCellというセルがあるところがあります。各DataGridViewComboCellは、BindingListの一意のコピーにバインドされています。バインディングリストからアイテムを削除すると、コンボボックスはバインディングリストから削除したエントリを削除します。
しかし、その値が選択されている場合、セル内の選択された項目としてとどまります。BindingListから項目を削除しても、DataGridViewComboBoxCellが更新されない
私はdatagridview.refresh()をやってみましたが、それでも助けにはなりませんでした。あなたが最新の情報に更新した後、EndEditを呼び出す必要はありません
1):ツールストリップのメニュー項目
// _contractLists is List<BindingList<String>> which is the datasource for a datagridviewcombobox
List<String> removedList = new List<string>();
_contractSelForm.ShowDialog();
_contractSelForm.GetandClearRemovedContracts(ref removedList);
foreach (BindingList<String> contractList in _contractLists)
{
// remove deleted favorites
foreach (string contract_name in removedList)
{
contractList.Remove(contract_name);
}
}
dataGridView1.Refresh();
dataGridView1.EndEdit();
正しいイベントでバインディングを移動したり変更したりしていますか?あなたが使用しているコードをペーストできますか?またdatagridview.Bind()またはバインディングは何かのように聞こえる...あなたのコードを見ることなくここに推測する – MethodMan
BindingListをコンボボックスの列にバインドする方法を示すことはできますか? dataGridView1は仮想モードですか? – Kimberly