参考此文: http://aspalliance.com/666
引用的文章示例分为两个工程,一个是继承于GridView的自定义GV控件, 另一个则是测试工程. 要求绑定到GV的DataSource为ObjectDataSource或SqlDataSource. 最关键是这种数据源要求在设计时在页面上指定好,而不能动态的在代码中实现绑定. (也许可以,没时间研究).
因此采用另一种方法,直接将控件的实现代码在ASPX页面中实现, 通过ViewState保存排序的字段和方向, 并修改了一下原代码中的一个BUG(如果某个字段包括另一个字段,则点排序的时候会互相替换).
本文附带的示例也是两个工程,一个即是引文中的控件工程,另一个工程包括两个页面, default.aspx是修改后的不引用控件的实现页面. objData.aspx则是原先附带的演示使用ObjectDataSource页面.
下载地址: /Files/margiex/MultiSortGridView.rar