我有一个List<>我使用绑定源绑定到DataViewGrid。像这样:
private void BindGridView(DataGridView dgv, List<KeyTextPair> list, Func<KeyTextPair, int, bool> predicate)
{
BindingSource bs = new BindingSource();
bs.DataSource = list.Where(predicate);
dgv.DataSource = bs;
}
我有一系列此类列表,用户可以从中选择在DVG中显示。但是,在尝试通过重新绑定更改另一个列表时,我得到错误:
“操作无效,因为它导致对SetCurrentCellAddressCore函数的可重入调用。”
我环顾了几个小时,但我还是没弄清楚为什么会这样。
如果你们其中一个人可以帮助我,我会很高兴。感谢。
答案 0 :(得分:0)
在第二行中,您需要将集合转换为列表:
bs.DataSource = list.Where(predicate).ToList();
P.S。如果这不能解决您的问题,请发布您的谓词代码
欢呼声