Mam zestaw narzędzi DataGrid WPF z jednym DataGridTemplateColumn. W atrybucie siatki określiłem, że chcę, aby wszystkie kolumny można było sortować, ale DataGridTemplateColumn na to nie zezwala. Wszystkie inne kolumny umożliwiają sortowanie. Próbowałem nawet jawnie ustawić CanUserSort na true dla tej kolumny, ale bez powodzenia. Czy jest w ogóle możliwe sortowanie kolumny szablonu? Udostępniłem niestandardowy sortownik, który działa dla wszystkich kolumn, ale nagłówek nie pozwala na kliknięcie sortowania.
<Controls:DataGrid ItemsSource="{Binding Events}" AutoGenerateColumns="False"
CanUserSortColumns="True"
CanUserReorderColumns="False"
Sorting="DataGrid_Sorting"
x:Name="EventsGrid">
<Controls:DataGrid.Columns>
<Controls:DataGridTemplateColumn Header="Type" Width="42" CanUserResize="False">
<Controls:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Image Source="{Binding EventTypeImage, Mode=OneWay}" HorizontalAlignment="Center" Width="16"/>
</DataTemplate>
</Controls:DataGridTemplateColumn.CellTemplate>
</Controls:DataGridTemplateColumn>
<Controls:DataGridTextColumn Header="Source"
Binding="{Binding Source, Mode=OneWay}" />
<Controls:DataGridTextColumn Header="Details" MinWidth="175"
Binding="{Binding Details, Mode=OneWay}" />
<Controls:DataGridTextColumn Header="Timestamp" MinWidth="175"
Binding="{Binding Timestamp, Mode=OneWay}"
IsReadOnly="True"/>
</Controls:DataGrid.Columns>
</Controls:DataGrid>