Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# DataGridView-滚动到底部会触发自动滚动_C#_Datagridview - Fatal编程技术网

C# DataGridView-滚动到底部会触发自动滚动

C# DataGridView-滚动到底部会触发自动滚动,c#,datagridview,C#,Datagridview,我正在使用DataGridView作为VSPackage工具窗口,WinForms样式。 我使用虚拟模式,因为我有一个非常大的数据集要显示(CellValueRequired已订阅并适当处理) 要显示的行数和列数仅在运行时确定,因此我使用分页机制仅显示数据的一小部分,例如 // initialization of the view DataGridView dgv = new DataGridView(); dgv.RowCount = 100; dgv.ColumnCount = 50; 因

我正在使用DataGridView作为VSPackage工具窗口,WinForms样式。 我使用虚拟模式,因为我有一个非常大的数据集要显示(
CellValueRequired
已订阅并适当处理)

要显示的行数和列数仅在运行时确定,因此我使用分页机制仅显示数据的一小部分,例如

// initialization of the view
DataGridView dgv = new DataGridView();
dgv.RowCount = 100;
dgv.ColumnCount = 50;
因此,用户可以看到数据的前100行,当他向下滚动时,我有一个事件处理方法,可以增加RowsCount以显示更多数据:

    private void dataGridView_Scroll(object sender, ScrollEventArgs e)
    {
        dataGridView.RowCount += 100;
    }
但是,问题是,在我将滚动条画到底后,滚动条会变得疯狂,它会以自己的名义反复向下滚动,即使我只拖动了一次,而且我没有使用鼠标

这就像我在一个无限的滚动循环中,触发了另一个滚动,感觉就像一个大事件混乱


如何防止它?

添加行后是否尝试输入断点

private void dataGridView_Scroll(object sender, ScrollEventArgs e)
{
    dataGridView.RowCount += 100;
    break;
}