如何更改wpf中datagrid中列的宽度
问题描述:
看起来像一个简单的问题,但不知何故,我找不到正确的答案。我有wpf中的datagrid,我想在其中更改c#中列的宽度。代码是如何更改wpf中datagrid中列的宽度
DataTable table = new DataTable();
DataColumn col1 = new DataColumn("From", typeof(string));
table.Columns.Add(col1);
table.Columns.Add(new DataColumn("To", typeof(string)));
table.Columns.Add(new DataColumn("Occurrence", typeof(int)));
dataGrid1.ItemsSource = table.DefaultView;
但是DataColumn没有宽度选项。在这种情况下如何改变列的宽度?谢谢。
答
我找到正确的解决方案。只需加上
dataGrid1.ColumnWidth = 100;
答
DataColumn仅用于数据,不是WPF对象,这就是为什么它没有宽度。
您可以设置列宽在DataGrid1中
dataGrid1.Columns[0].Width = 50;
...但是,如果你有设置为true,这可能无法正常工作的AutoGenerateColumns,此外在C#代码风格是不是好的做法。
完全控制的最佳方法是使用XAML并将每列绑定到数据网格。本网站有一个很好的指南datagrids和绑定http://www.wpftutorial.net/datagrid.html