wpf datagrid rowdetail被切断了

时间:2013-09-25 19:43:20

标签: .net wpf xaml datagrid .net-4.5

我有一个WPF数据网格,它根据其中一列(操作列)的组合框选择更改rowdetails datatemplate。其中一个rowdetails模板很大,为数据网格提供的空间无法完全显示rowdetails,因此细节被截断。如果您尝试向下滚动,则显示下一条记录,而不是当前记录中其余的rowdetails。换句话说,它不会部分滚动记录。

示例:注意底部切掉的字段,还有其他记录不可见。如果在下一条记录出现后单击滚动条按钮,则所有记录都向上移动并且不可见。enter image description here

问题:

有没有办法让数据网格滚动功能不只是记录到记录,而是显示超大的rowdetails?

SOLUTION:

根据下面接受的答案,我在数据网格样式中添加了以下内容:

<Style TargetType="{x:Type DataGrid}">
   <Setter Property="VirtualizingPanel.ScrollUnit" Value="Pixel" />
</Style>

1 个答案:

答案 0 :(得分:4)

这可能对你有帮助,尽管它取决于你使用.NET 4.5:

VirtualizingPanel.ScrollUnit附加属性可让您更改DataGrid的滚动行为:

  

获取一个值,该值指示滚动是否作为项目进行测量   集合或像素。

使用VirtualizingPanel.ScrollUnit="Pixel"而不是Item可以让您按照自己的方式滚动。

如果您没有使用4.5,则可能需要在模板中使用ScrollViewer敲门。