C# - 如何在删除行后刷新DataGridView

sa1*_*125 6 c# datagridview refresh populate winforms

在我的代码中,我需要在重复间隔后从DataGridView中删除行,所以当计时器到期时我调用以下函数:

private void removeRows(DataGridView dgv) {

    foreach (DataGridViewRow row in dgv.Rows)
    {
        // if some condition holds
        dgv.Remove(row);                
    }
    dgv.Refresh();

}
Run Code Online (Sandbox Code Playgroud)

我知道这些行已成功从DataGridView中删除,但它们仍然因任何原因仍保留在显示中.关于我可能做错的任何提示?

Ana*_*hah 2

如果您已将数据网格绑定到可观察集合(如果没有,那么您应该这样做),那么您将需要实现 INotifyCollectionChanged 接口,以便侦听器收到动态更改的通知,例如添加和删除项目或刷新整个列表时。

华泰