如何在WPF Datagrid上启用滚动条/滚动

时间:2010-08-09 20:48:19

标签: wpf datagrid scroll scrollbar

我的DataGrid控件位于Grid布局容器中,我似乎无法在DataGrid本身上自动滚动。我可以将DataGrid包裹在ScrollViewer左右,从而添加滚动条,但自动滚动功能不起作用。

现在,当新条目添加到DataGrid时,DataGrid只会垂直展开。我希望启用垂直滚动条,当添加的项目多于原始垂直大小可以显示的内容时,可以滚动到DataGrid中的项目,而不是整个DataGrid展开。当然,必须有一种简单的方法来实现这一目标。

1 个答案:

答案 0 :(得分:16)

好的,得到了​​这个...我发现我甚至不需要将数据网格包裹在ScrollViewer周围。我所要做的就是定义数据网格的高度(使用“高度”属性),当添加超出高度的项目时,会出现数据网格滚动条。显然,当未定义高度时,它是动态的,并在添加新项目时垂直扩展。

另外要补充的是,在我的datagrid中,我也为每一行定义了行详细信息,因此当展开多个行详细信息时,将启用滚动,但滚动条行为有点古怪(就像它不是平滑滚动),并且使其平滑滚动的修复是添加以下datagrid属性:ScrollViewer.CanContentScroll =“False”(我猜测datagrid控件是/从ScrollViewer继承)和然后滚动很平滑,就像正常的预期滚动行为一样。