0

我已经按照此处提到的步骤为 aspxgridview 实现了自定义排序:http ://documentation.devexpress.com/#AspNet/CustomDocument3818

但是,我注意到它只对当前活动页面进行排序,所以每当我转到另一个页面时,我必须再次单击该列来对其进行排序。

这种行为是正确的,还是我错过了什么?我该如何解决?

PS:我考虑过捕获 PageIndexChanged 事件并手动对活动页面进行排序,但这似乎太 hackish ...

4

2 回答 2

1

我没有检查您的代码,但您的代码似乎不起作用,因为date1.CompareTo方法不返回 -1、0 或 1 值。它可能返回小于零、等于它和大于零的值。

请检查 e.Result 属性值,因为它只能接受这三个数字。

顺便说一句,我看到您有一个文字格式的日期,并且正在尝试即时转换字符串。我认为您可能更容易创建一个应将日期转换为适当格式的未绑定列,这样您就不必担心编写自定义排序事件处理程序。

谢谢,

背心(DevExpress 支持)

于 2010-11-11T19:04:10.407 回答
0

排序有什么问题?您是否希望它按字母顺序排序?

该示例显示了如何进行自定义排序。因此,当您对其进行排序时,它会使用算法来检查字符串的长度,然后按字符串长度对其进行排序。

“此示例展示了如何实现自定义排序。“国家/地区”列显示文本值。当对此列应用排序时,将通过“国家/地区”列值的长度来比较行。

我已经对其进行了测试,它似乎可以正常工作。

您可能会发现此示例也很有帮助。

希望有帮助。

于 2010-11-09T23:56:24.723 回答