Ich habe ein WPF Toolkit DataGrid mit einer DataGridTemplateColumn. Ich habe in einem Rasterattribut angegeben, dass alle Spalten sortierbar sein sollen, aber die DataGridTemplateColumn lässt dies nicht zu. Alle anderen Spalten erlauben das Sortieren. Ich habe sogar versucht, CanUserSort für diese Spalte explizit auf true zu setzen, aber kein Glück. Ist es überhaupt möglich, eine Vorlagenspalte zu sortieren? Ich habe einen benutzerdefinierten Sortierer bereitgestellt, der für alle Spalten funktioniert, aber die Kopfzeile erlaubt keinen Sortierklick.
<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>