我正在使用 WPF 数据网格,我所做的唯一修改是:
<toolkit:DataGridTextColumn.ElementStyle>
<Style TargetType="TextBlock">
<Setter Property="TextWrapping" Value="Wrap"/>
</Style>
</toolkit:DataGridTextColumn.ElementStyle>
我进行了此修改,因此如果单元格内容较长,它们会拉伸(stretch)行高,不会隐藏任何文本。 问题在于 DataGrid 的滚动行为 - 滚动时它会跳过整行,如果行高于一行,则根本无法正常工作 - 滚动条在滚动时会抖动等。
有没有办法让WPF DataGrid“平滑”滚动而不是逐行滚动?
谢谢
最佳答案
我还没有明确使用 DataGrid,但事实上,使用 ScrollViewer.CanContentScroll=False
会替换使用 VirtualizedStackPanel 的默认
与常规的 ItemsPanelTemplate
StackPanel
。它将平滑滚动,但即使它不可见,它也会渲染每个项目。
如果您正在处理复杂的可视化树或大型数据集,这绝对会降低性能。
关于wpf - WPF DataGrid 的平滑滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2303120/