当数据源发生更改时,如何防止DataGridView自动滚动?

我在DataTable的“RowChanged”事件中尝试了这个( http://brainof-dave.blogspot.com/2007/08/turning-off-auto-scrolling-in-bound.html ),该事件是数据源的DataGridView,但无济于事。

基本上,我有一个带有BindingSource的DataGridView,因为它是DataSource。 BindingSource的DataSource是一个包含DataTable的DataView。 每当其中一行中的数据发生变化时,DataGridView就会滚动回到顶部。 有一个简单的解决方案吗?

看起来我找到了它: http : //seewinapp.blogspot.com/2005/09/is-your-autoscroll-too-auto.html

我覆盖了DataTable上的RowChanged事件,存储了FirstDisplayedScrollingRowIndex,调用了以该索引作为参数的委托方法,然后将FirstDisplayedScrollingRowIndex重置为委托方法中的该参数。 事实certificate,在所有事件被触发之后才会发生自动滚动,因此在事件中尝试破解它是没用的。 委托是有效的,因为它是在事件之后调用的。