这看起来像一个简单的问题,但不知怎的,我找不到正确的答案。我在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没有宽度选项。在这种情况下如何更改列的宽度?谢谢。
答案 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;