如何将DataGrid滚动条移至网格底部?无高度时布局问题求助
问题解决思路
- 先检查容器类型:如果DataGrid放在StackPanel里,立刻替换成Grid或DockPanel。StackPanel会无限制扩展容纳所有内容,导致滚动条完全失效,必须用能约束子控件尺寸的容器。
- 配置Grid行参数:将DataGrid所在Grid行的
Height设为*,而非Auto或固定值。*代表占据父容器剩余空间,给DataGrid划定固定高度范围,滚动条才能正常工作。 - 调整DataGrid属性:确保DataGrid设置
VerticalAlignment="Stretch",不要手动指定Height;同时把VerticalScrollBarVisibility设为Auto或Visible,保证滚动条正常显示。 - 代码控制滚动到底部:数据加载完成后,在后台调用
dataGrid.ScrollIntoView(dataGrid.Items[dataGrid.Items.Count - 1]),即可直接跳转到DataGrid最后一行。
内容的提问来源于stack exchange,提问作者miniHessel
相关产品推荐
相关产品推荐

