所以我有一个名为dtgQue的数据网格视图,这里是我的列的属性。
'Setting the Properties for the Due Date
QueDueDate.Name = "DueDate"
QueDueDate.ValueType = GetType(Date)
QueDueDate.HeaderText = "Due Date"
QueDueDate.CellTemplate = New DataGridViewTextBoxCell
然后在我向该列添加一堆行之后,然后执行
dtgQue.Sort(dtgQue.Columns(3), System.ComponentModel.ListSortDirection.Descending)
但是不是将它排序100%正确,例如这里是按照排序顺序排列的一组日期。 2014年9月8日,9/2/2014 /,2014年9月15日,2014年10月1日,你看到因为某些原因它在9/8之后推出9/2是不对的。
答案 0 :(得分:1)
我猜你应该使用:
QueDueDate.ValueType = GetType(string)
QueDueDate.CellTemplate = New DataGridViewTextBoxCell
编写自定义排序函数,每次DataGridViewTextBoxCell.Value
将从String
数据类型解析为Date
数据类型,然后将其用于比较。
或者:
QueDueDate.ValueType = GetType(Date)
QueDueDate.CellTemplate = New CalendarCell
在这里查看CalendarCell。
如果数据属于合适的类型,则需要正确工作/排序。
希望它有所帮助!