如何在wpf中更改datagrid中列的宽度

时间:2016-01-13 08:16:48

标签: c# wpf datagrid

这看起来像一个简单的问题,但不知怎的,我找不到正确的答案。我在wpf中有datagrid,我想在c#中更改列的宽度。代码是

    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没有宽度选项。在这种情况下如何更改列的宽度?谢谢。

2 个答案:

答案 0 :(得分:1)

DataColumn仅用于数据而不是WPF对象,这就是它没有宽度的原因。

您可以在dataGrid1

上的列上设置宽度
dataGrid1.Columns[0].Width = 50;

...但是如果你将AutoGenerateColumns设置为true,这可能不起作用,而且C#代码中的样式不是好习惯。

完全控制的最佳方法是使用XAML并将每列绑定到数据网格。这个网站有一个很好的数据网格和绑定指南http://www.wpftutorial.net/datagrid.html

答案 1 :(得分:0)

我找到了正确的解决方案。只需添加

    dataGrid1.ColumnWidth = 100;