[英]C# WPF DataGrid Column Header fitting TextBox into width
[英]C# Wpf Datagrid Last Column Width=“*” Collapses Other Columns
我正在使用一个数据网格,它相对于窗口大小水平拉伸。
因为我想摆脱右侧生成的额外列,我将所有列大小设置为“自动”,除了最后一列。 我将最后一列的大小设置为“*”。
最后我摆脱了右侧生成的额外列。
但现在,当我使用信息填充数据网格时,除最后一列之外的所有列大小都会折叠到其标题宽度。
为什么列的标题宽度? 我将它们的宽度设置为“自动”,它们也应该尊重它们的单元格大小。
注意:我不想为列设置MinWidths,它们应根据列和单元格大小自动调整大小。
谢谢..
尝试使用以下代码:
private void FitToContent()
{
int numCols ;
int i ;
numCols = dg.Columns.Count() ;
i = 0 ;
// where dg is your data grid's name...
foreach (DataGridColumn column in dg.Columns)
{
if(i < numCols - 1)
{
//if you want to size ur column as per the cell content
column.Width = new DataGridLength(1.0, DataGridLengthUnitType.SizeToCells);
//if you want to size ur column as per the column header
column.Width = new DataGridLength(1.0, DataGridLengthUnitType.SizeToHeader);
//if you want to size ur column as per both header and cell content
column.Width = new DataGridLength(1.0, DataGridLengthUnitType.Auto);
}
else
{
column.Width = new DataGridLength(1.0, DataGridLengthUnitType.Star);
}
i++ ;
}
}
确保将所有列的HorizontalScrollVisibility保持为Auto
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.