【问题标题】:Custom DataGridView column sort based on Value not Formatted value自定义 DataGridView 列排序基于值未格式化值
【发布时间】:2011-02-22 12:48:07
【问题描述】:

我有一个自定义的DataGridView 单元格用于显示MyType 对象的内容。为了控制它们的格式,我覆盖了DataGridViewTextBoxCellGetFormattedValue()FormattedvalueType 方法,因为在这种情况下我不想使用默认的ToString() 方法。问题是,当我这样做时,DataGridView 是按FormattedValue 中的字符串而不是Value 对列进行排序。

我没有看到可以重写以更改列的排序行为的方法。虽然我知道我可以,但我不想编写自定义的DataGridView.Sort() 方法,因为我在多个DataGridViews 中使用MyType 列。

【问题讨论】:

    标签: c# .net winforms .net-3.5 datagridview


    【解决方案1】:

    您是手动填充 DGV,还是使用数据绑定?

    在前一种情况下,您可以处理 SortCompare 事件,如 SwDevMan81 发布的链接中所述。

    在后一种情况下,请确保您的 MyType 类实现了 IComparable。 DGV 将使用此实现对数据进行排序。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 2018-04-13
      • 2018-02-08
      • 1970-01-01
      • 1970-01-01
      • 2017-09-06
      相关资源
      最近更新 更多