我有一个DataGrid,其中每行包含一个ItemsControl。正因为如此,网格的排可以很高。如果一行高于网格的高度,我无法滚动查看该行的其余部分,因为DataGrid自动滚动到下一行。也就是说,如果我正在查看第1行的上半部分,并且单击了垂直滚动条的向下箭头,则会跳到第2行的顶部。它不会让我看到第1行的下半部分。如何制作DataGrid平滑滚动行而不是逐行逐行?防止DataGrid从捕捉到行滚动
4
A
回答
6
听起来像你想禁用虚拟化。要做到这一点,只需将CanContentScroll
设置为False
就可以了ScrollViewer
。但是,如果您的DataGrid
中有大量数据,那么虚拟化将变得非常缓慢,因为所有DataGridRows
都将一次生成,而不是实际可见的时间。
<DataGrid ...
ScrollViewer.CanContentScroll="False">
3
我碰到这个问题,其中滚动将坚持行。然后,我遇到了:https://stackoverflow.com/a/13384164/4791472
<Datagrid ..
VirtualizingPanel.ScrollUnit="Pixel"
基本上它设置滚动捕捉到的像素,而不是项目。这将使平滑的滚动体验。
+0
当您需要虚拟化时,这是正确的选择。 – David
相关问题
- 1. 如何防止DataGrid RowDetails停止滚动?
- 2. 如何防止自动滚动DataGrid中
- 3. Win32防止窗口“捕捉”
- 4. 防止GTKMM捕捉异常
- 5. 滚动捕捉点
- 6. 捕捉使用滚动型
- 7. 如何捕捉零滚动?
- 8. 垂直滚动捕捉jQuery
- 9. 鼠标滚动 - 捕捉到的div
- 10. Android - Gallery.onItemSelected()导致滚动以捕捉到
- 11. 防止Div从滚动权?
- 12. 防止从viewForHeaderInSection滚动UITableViewCell
- 13. 防止datagrid伸展到行高
- 14. 防止删除DataGrid行
- 15. 捕捉滚动到元素只在滚动
- 16. 可滚动面板捕捉到滚动上的元素
- 17. 防止从DevExtreme JS的DataGrid
- 18. Fullpage.js - 防止滚动
- 19. 防止ScrollViewer滚动
- 20. 防止ListView滚动
- 21. 防止iframe滚动
- 22. CSS防止滚动
- 23. 防止FlipView滚动
- 24. 防止UITableView滚动?
- 25. WatchOS捕捉到WKInterfaceTable中滚动的下一行
- 26. 防止多个活动与相机捕捉
- 27. 如何防止地图标记捕捉到道路
- 28. Fullpage JS:防止捕捉到顶部或底部
- 29. 捕捉滚动的事件停止RowSelected事件(UITableView,Xamarin,MonoTouch)
- 30. 防止JavaScript启动滚动
谢谢@Meleak。我之前尝试过,它没有改变任何东西,但这次它是在做这个伎俩。我不想禁用虚拟化,但如果要查看整行,我有什么选择?听起来像是一个DataGrid的bug。说到这一点,将CanContentScroll更改为false也会导致我的前29行在第一次加载网格时无法正确布局。行不会垂直扩展以适应其内容。如果我点击按钮再次加载它,它会正确显示。 – xr280xr
我还没有看到任何启用虚拟化的“平滑滚动”方式。关于29行加载不正确,这听起来像是你遇到的一个奇怪的错误。你能发表一些代码来重现问题吗? –
我有我的待办事项列表。 – xr280xr