2016-01-13 3 views
0

Это похоже на простой вопрос, но почему-то я не могу найти правильный ответ. У меня есть datagrid в wpf, в котором я хочу изменить ширину столбцов в C#. КодКак изменить ширину столбца в datagrid в wpf

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

Я нахожу правильное решение. Просто добавьте

dataGrid1.ColumnWidth = 100; 
1

DataColumn предназначен только для данных и не является объектом WPF, поэтому он не имеет ширины.

Вы можете установить ширину по столбцам на DataGrid1

dataGrid1.Columns[0].Width = 50; 

... Однако если у вас есть AutoGenerateColumns значение ИСТИНА это не может работать, и, кроме того, что стиль в C# код не является хорошей практикой.

Лучшим подходом для полного контроля является использование XAML и привязка каждого столбца к datagrid. Этот сайт имеет отличное руководство по datagrids и привязке http://www.wpftutorial.net/datagrid.html

Смежные вопросы