各行にItemsControlが含まれているDataGridがあります。このため、グリッドの行は非常に高くなる可能性があります。行がグリッドの高さよりも高い場合、DataGridが自動的に次の行にスクロールするため、スクロールして残りの行を表示できません。つまり、行1の上半分を表示していて、垂直スクロールバーの下矢印をクリックすると、行2の上にスキップします。行1の下半分は表示されません。作成方法DataGridは、行ごとにステップするのではなく、行をスムーズにスクロールしますか?
質問する
2916 次
2 に答える
7
仮想化を無効にしたいようです。これを行うには、に設定CanContentScroll
しFalse
ます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 に答える