我有一个自定义DataGridView
单元格,用于显示MyType
个对象的内容。要控制它们的格式化方式,我会覆盖GetFormattedValue()
的{{1}}和FormattedvalueType
方法,因为在这种情况下我不想使用默认的DataGridViewTextBoxCell
方法。问题是,当我执行此操作时,ToString()
会按DataGridView
中的字符串而不是FormattedValue
对字符串进行排序。
我没有看到我可以覆盖的方法来更改列的排序行为。虽然我知道我可以,但我不想编写自定义Value
方法,因为我在多个DataGridView.Sort()
中使用MyType
列。
答案 0 :(得分:2)
答案 1 :(得分:1)
您是手动填充DGV还是使用数据绑定?
在前一种情况下,您可以处理SortCompare事件,如SwDevMan81发布的链接中所述。
在后一种情况下,请确保您的MyType
类实现IComparable
。 DGV将使用此实现对数据进行排序。