在DataGrid中使用模板列時,默認功能中對點擊列標題是不對列值進行排序的,要排序就需要添加以下兩個屬性:
1、CanUserSort="True"
2、SortMemberPath="Area" //此處SortMemberPath屬性的值是作為排序依據的數據成員
如下代碼,“產地”這個列就能通過點擊列標題(產地)來排序:
<DataGridTemplateColumn CanUserSort="True" SortMemberPath="Area" Header="產地" MinWidth="80"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <TextBlock Text="{Binding Path=Area}" VerticalAlignment="Center" > </TextBlock> </DataTemplate> </DataGridTemplateColumn.CellTemplate> </DataGridTemplateColumn>