Я хочу указать порядок по умолчанию при запуске, но все же разрешить пользователю сортировку, щелкнув заголовки столбцов. К сожалению, свойство SortDirection игнорируется, когда оно установлено, то есть мы получаем правильный заголовок столбца, но ничего не сортируется.
Нажав на заголовки вручную, сортировка данных выполняется правильно, поэтому это не сортировка. Это упрощенная версия, которую я использую:
<DataGrid ItemsSource="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type Window}}, Path=CurrentView}" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Header 1" Binding="{Binding ApplicationName}"/>
<DataGridTextColumn Header="Header 2"
Binding="{Binding TotalTime}" SortDirection="Descending"/>
</DataGrid.Columns>
</DataGrid>
Обновление: я также попытался добавить SortDescriptions в ICollectionView, как было предложено, без хороших результатов. Может ли это иметь какое-то отношение к тому факту, что я динамически добавляю новые элементы в коллекцию? Т.е. при запуске список пуст и медленно заполняется, и, возможно, sortdescription применяется только один раз?