【发布时间】:2011-03-21 09:23:07
【问题描述】:
我有一个绑定到 BindingList(C# Windows 窗体)的 DataGridView。如果我更改列表中某个项目中的一个值,它不会立即显示在网格中。如果我单击更改的单元格,或最小化然后最大化窗口,它会正确更新,但我需要它自动发生。
我之前也遇到过同样的问题,但在这种情况下,我必须在值更改的同时更改单元格的背景颜色。这会导致单元格正确刷新。
我可以让它工作的唯一方法是......
dataGridView.DataSource = null;
dataGridView.DataSource = myBindingList
...但我真的很想避免这种情况,因为它会使滚动条弹回顶部,这意味着我必须再次设置单元格背景颜色。肯定有更好的办法。我已经尝试过 Refresh(以及刷新父级)、Update 和 Invalidate,但它们没有做我需要的。
我在一些留言板上看到过这个问题,但还没有看到有效的答案。
【问题讨论】:
标签: c# winforms data-binding datagridview