刷新时我的DataGridView会闪烁

时间:2013-10-14 10:45:17

标签: c# winforms datagridview

如果我在datagridview中刷新一些数据,我会失去对所选单元格的关注随机文本闪烁

为什么会这样?在其他应用程序中,我没有看到这个问题,所以我可以解决这个问题,但是怎么做?

我通过以下代码刷新数据:

SBind.DataSource = DTable; // SBind is binded my grid.DataSource = SBind
SBind.ResetBindings(false);

2 个答案:

答案 0 :(得分:6)

试试这个:

SBind.SuspendLayout();
SBind.DataSource = DTable;
SBind.ResetBindings(false);
SBind.ResumeLayout(true);

您还可以尝试启用网格的DoubleBuffered

typeof(Control).GetProperty("DoubleBuffered", BindingFlags.NonPublic | BindingFlags.Instance)
               .SetValue(SBind, true, null);

答案 1 :(得分:0)

这也有帮助:

dataGridView1.DoubleBuffered(true);

https://msdn.microsoft.com/en-us/library/3t7htc9c(v=vs.110).aspx