我正在使用DataGridView作为VSPackage工具窗口,WinForms样式。
我正在使用虚拟模式,因为我有一个非常大的数据集要显示(CellValueNeeded
已订阅并正确处理。)
要显示的行数和列数仅在运行时确定,因此我使用分页机制仅显示数据的一小部分,例如
// 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;
}
但是,问题是滚动条在我将其绘制到底部后会变得疯狂它会反复向下滚动,即使我只拖动它一次并且我闲置了老鼠。
就像我在滚动的无限循环中触发了另一次滚动,感觉就像是一场大事件。
我该如何预防?
答案 0 :(得分:0)
添加行后是否尝试输入断点?
private void dataGridView_Scroll(object sender, ScrollEventArgs e)
{
dataGridView.RowCount += 100;
break;
}