【发布时间】:2011-12-31 06:01:49
【问题描述】:
我有一个带有自定义主题的 DataGrid。现在,如果我调整一列的大小并使其更宽,它会尝试挤压其他列以便为该列腾出空间。
相反,是否可以随着列宽的增加而增加整个 DataGrid 的宽度。底部显示水平滚动条即可。
编辑:为了澄清,每一列都有一个 MinWidth 设置。因此,如果整体宽度 > 窗口宽度,我会看到一个滚动条。但是在我有一个数据网格
【问题讨论】:
我有一个带有自定义主题的 DataGrid。现在,如果我调整一列的大小并使其更宽,它会尝试挤压其他列以便为该列腾出空间。
相反,是否可以随着列宽的增加而增加整个 DataGrid 的宽度。底部显示水平滚动条即可。
编辑:为了澄清,每一列都有一个 MinWidth 设置。因此,如果整体宽度 > 窗口宽度,我会看到一个滚动条。但是在我有一个数据网格
【问题讨论】:
听起来您的其中一列有 Width="*",这意味着该列被分配给所有剩余空间并根据需要增长/收缩,而不是让 DataGrid 按要求增长/收缩并显示为 HorizontalScrollBar。
【讨论】:
这就是列的 MinWidth 的设计目的。只需为您不想缩小的列设置它。要限制网格的最大宽度,请使用 ScrollViewer:)
【讨论】:
数据网格的默认行为是您需要的!如果您的 Datagrid 没有显示水平滚动条,可能是因为它包含在限制其宽度的控件中。尝试将其放在 Grid 中,并确保您没有设置包含它的任何控件(包括 Window)的 'Width' 属性。
【讨论】: