自定义 DataGrid 控件中自动生成的列

1. 修改生成的列

 在 AutoGeneratingColumn 事件处理程序中,通过引用 DataGridAutoGeneratingColumnEventArgs..::..Column 属性来访问 DataGridColumn 属性。

// Modify the header of the Name column.
if (e.Column.Header.ToString() == "Name")
e.Column.Header
= "Task";

2. 替换生成的列

a. 在 AutoGeneratingColumn 事件处理程序中,创建一个新的 DataGridColumn

// Replace the DueDate column with a custom template column.
if (e.PropertyName == "DueDate")
{
// Create a new template column.
DataGridTemplateColumn templateColumn = new DataGridTemplateColumn();
templateColumn.Header
= "Due Date";
templateColumn.CellTemplate
= (DataTemplate)Resources["dueDateCellTemplate"];
templateColumn.CellEditingTemplate
= (DataTemplate)Resources["dueDateCellEditingTemplate"];
templateColumn.SortMemberPath
= "DueDate";
// ...

b. 将 DataGridAutoGeneratingColumnEventArgs..::..Column 属性中的列替换为新的 DataGridColumn 实例。

// Replace the auto-generated column with the templateColumn.
e.Column = templateColumn;
原文地址:https://www.cnblogs.com/landexia/p/1984162.html