检查WPF DataGrid中的可见行

ctr*_*373 7 .net c# wpf datagrid

我有一个WPF DataGrid,当屏幕上有太多行要查看时,它会得到一个垂直滚动条.我想知道的是,如果有一种方法可以知道用户滚动时顶部可见行是什么.

理想情况下,我希望能够连接事件以了解用户何时滚动和滚动,检查顶部可见行是什么以更新某些信息.

Bob*_*ing 0

这是一种过于复杂的方法,但它可能有效。首先,子类化 DataGridRowsPresenter 并重写OnViewportOffsetChanged 方法。然后,复制数据网格的标准控件模板,并将 DataGridRowsPresenter 替换为您自己的。我将相对于视口的行的命中测试的详细信息留给您;-)。

具体来说,你想实现什么目标?也许我们可以想出一个更好的方法,因为这可能非常脆弱,并且需要大量额外的工作(即,如果他们更新控制模板,则保持同步)。