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

gsh*_*arp 8 c# wpf listview gridview wpf-controls

我想在代码中定义GridView列的"自动"宽度.我怎样才能做到这一点?

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

Mat*_*ton 14

GridViewColumn的Width属性是double类型,但根据MSDN页面,您可以将其设置为Double.NaN("非数字")以告诉它自动调整大小.

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