如何在代码中定义WPF GridView列的“自动”宽度?

时间:2009-08-12 12:19:10

标签: c# wpf listview gridview wpf-controls

我想在代码中定义GridView列的“Auto”宽度。我怎么能这样做?

var grid = (GridView)myListview.View;
grid.Columns.Add(new GridViewColumn
{
   Header = "My Header",
   DisplayMemberBinding = new Binding("MyBinding"),
   Width = ??? // Auto
});

2 个答案:

答案 0 :(得分:14)

GridViewColumn的Width属性是double类型,但是根据MSDN page,你可以将它设置为Double.NaN(“不是数字”)来告诉它自动调整大小。

如果你这样做,如果你想知道它自动调整大小的宽度,你必须要求它的ActualWidth。

答案 1 :(得分:2)

如果您希望在代码中为普通网格控件的列的Width属性执行相同的操作,请使用GridLength.Auto。