datagridview左上角的单元格选择所有加载全部 - 如何防止?

时间:2017-04-06 22:11:08

标签: vb.net datagridview

当我选择datagridview的左上角来选择所有记录时,它会陷入困境(冻结直到它加载然后解锁)。我假设发生这种情况是因为它试图重新加载网格......虽然我不确定这是发生了什么。该表有10,000条记录。

无论如何,我正试图阻止冻结的发生。

我找到了以下内容来捕获事件(单击左上角的单元格)。

抓住了这个如何停止重装或导致其冻结并最终解锁的东西?

 Private Sub DataGridView1_MouseDown(ByVal sender As Object, ByVal e As DataGridViewCellMouseEventArgs) _
    Handles DataGridView1.CellMouseDown
    If e.RowIndex = -1 And e.ColumnIndex = -1 Then
        m_MouseDownFromdgv = True
        OnMouseDown(e)
    End If
End Sub

Protected Overrides Sub OnMouseDown(ByVal e As MouseEventArgs)
    If m_MouseDownFromdgv Then
        m_MouseDownFromdgv = False
        MyBase.OnMouseDown(e)
    End If
End Sub

感谢, 吉姆

1 个答案:

答案 0 :(得分:0)

OSKM提出这样的想法:在选择左上角框时,减速可能是落入循环的结果。

我发现情况确实如此。

由于我在输入和退出单元格时触发了几个datagridview事件,因此许多事件都有循环等。我通过在每个事件例程的前面添加一个守门员来解决这个问题  systemOfMeasure