Это мой фрагмент сетки данных:
<DataGrid Margin="0,4,0,0" Grid.Row="2" CanUserSortColumns="True" x:Name="grvDocs" Sorting="grvDocs_Sorting" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Efile ID" Width="100" SortMemberPath="d.DocumentID">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding DocumentID}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
...
Это код С#:
private void grvDocs_Sorting(object sender, DataGridSortingEventArgs e)
{
DataGridColumn column = e.Column;
ListSortDirection direction = (column.SortDirection != ListSortDirection.Ascending) ? ListSortDirection.Ascending : ListSortDirection.Descending;
//set the sort order on the column
column.SortDirection = direction;
e.Handled = true;
BindDocuments(0, "LastStatusChangedDateTime", e.Column.SortDirection);
}
Тем не менее, когда я проверяю e.Column.SortDirection
, это всегда по возрастанию. Любая идея, как решить эту проблему? Я больше похож на WTF, чем на WPF.
SortDirection
— это свойство, что вы делаете с ним? Событие Sorting позволяет вам переопределить поведение сортировки — что вы делаете, чтобы переопределить это поведение, если вы обрабатываете это событие? - person Peter Ritchie   schedule 03.04.2013