Gridview没有在DateTime coloumn上正确排序

时间:2016-07-26 07:23:17

标签: devexpress devexpress-windows-ui

Private Sub GridViewLog_StartSorting(ByVal sender As Object, ByVal e As EventArgs) Handles GridViewLog.StartSorting
SetDefaultSort()
End Sub

Private Sub SetDefaultSort()
        Dim col1 As DevExpress.XtraGrid.Columns.GridColumn
        Dim col2 As DevExpress.XtraGrid.Columns.GridColumn
        Dim sortIndex As Integer
        Dim order As DevExpress.Data.ColumnSortOrder
        Try
            col1 = GridViewLog.Columns("Date_Field")
            col2 = GridViewLog.Columns("Time_Field")
            If Not ((GridViewLog.SortedColumns.Contains(col1) OrElse GridViewLog.GroupedColumns.Contains(col1)) AndAlso (GridViewLog.SortedColumns.Contains(col2) OrElse GridViewLog.GroupedColumns.Contains(col2))) Then

                Me.GridViewLog.BeginSort()

                If col1.SortOrder = DevExpress.Data.ColumnSortOrder.None Then
                    order = col2.SortOrder
                Else
                    order = col1.SortOrder
                End If
                If order = DevExpress.Data.ColumnSortOrder.None Then
                    order = DevExpress.Data.ColumnSortOrder.Descending
                End If
                sortIndex = GridViewLog.SortedColumns.Count
                Me.GridViewLog.Columns("Date_Field").SortIndex = sortIndex - 1
                Me.GridViewLog.Columns("Date_Field").SortOrder = order
                Me.GridViewLog.Columns("Time_Field").SortIndex = sortIndex
                Me.GridViewLog.Columns("Time_Field").SortOrder = order
                Me.GridViewLog.EndSort()
            End If
        Catch ex As Exception

        End Try
     End Sub

改变了一些时间到10:31,他们没有重新排序。然后我在列的顶部点击时间,它仍然没有改变。请查看随附的屏幕截图

Screenshot

1 个答案:

答案 0 :(得分:0)

我认为有两种选择:

  1. 设置列' SortMode属性ColumnSortMode.Value

  2. 使用CustomColumnSort事件并设置列' SortMode属性ColumnSortMode.Custom

相关问题