5

各行にItemsControlが含まれているDataGridがあります。このため、グリッドの行は非常に高くなる可能性があります。行がグリッドの高さよりも高い場合、DataGridが自動的に次の行にスクロールするため、スクロールして残りの行を表示できません。つまり、行1の上半分を表示していて、垂直スクロールバーの下矢印をクリックすると、行2の上にスキップします。行1の下半分は表示されません。作成方法DataGridは、行ごとにステップするのではなく、行をスムーズにスクロールしますか?

4

2 に答える 2

7

仮想化を無効にしたいようです。これを行うには、に設定CanContentScrollFalseますScrollViewer。ただし、データが大量にある場合は、仮想化をオフにすると、実際にユーザーに表示されるときではなく、すべてが一度に生成されるため、データDataGridがかなり遅くなる可能性があります。DataGridRows

<DataGrid ...
          ScrollViewer.CanContentScroll="False">
于 2012-06-20T16:16:45.947 に答える
5

スクロールが行に固執するこの問題にぶつかりました。それから私は出くわしました:https ://stackoverflow.com/a/13384164/4791472

<Datagrid ..
            VirtualizingPanel.ScrollUnit="Pixel"

基本的に、スクロールをアイテムではなくピクセルにスナップするように設定します。これにより、スムーズなスクロール体験が可能になります。

于 2016-08-16T10:17:45.043 に答える