winform中datagridview点击标题栏能进行该行排序

laopw123 2010-07-26 04:23:48
datagridview中的列和行是通过绑定一个List<T>字段的数据达到绑定,我想问,如何实现我按datagridview的标题能够对该列进行排序,我用datagridview任务的向导能达到此效果;自定义的数据怎么做到
...全文
1133 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
srszzw 2013-01-18
  • 打赏
  • 举报
回复
之前有人写过一个支持泛型绑定datagridview并且可以排序的两个类,经实验可用,但是对比datatable,排序速度比较慢。
meduke 2011-12-01
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 laopw123 的回复:]
如果我用datagridview中的向导(右上角的箭头)的方法新建一个数据源,得到的表是可以点表头排序的,但是如果我用DataSourse绑定数据(数据是List<T>)功能就没了,不知道怎么才能有
[/Quote]
我用list<> 也不行,
mngzilin 2010-07-27
  • 打赏
  • 举报
回复
ICompare接口
laopw123 2010-07-27
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 mafgm 的回复:]

你绑定泛型数据肯定不能排序,你的自己写泛型数据的排序函数并且适用于datagridview,我以前也碰到过这个问题,后来用datatable代替了list<>,建议你如果用datagridview数据源最好用datatable,省的麻烦
[/Quote]
如果我用datatable代替了list<>,那怎么实现那个功能呢
一切为了你 2010-07-27
  • 打赏
  • 举报
回复
它自带排序功能,对于数字类型的排序不符合我们的实际要求 (一般)
mill_dhl 2010-07-27
  • 打赏
  • 举报
回复
默认可以排序的
qiuxin425 2010-07-27
  • 打赏
  • 举报
回复
启动列编辑--》修改SortMode属性,可以用于对列进行排序和不排序,看你的具体需求了。
mafgm 2010-07-27
  • 打赏
  • 举报
回复
你绑定泛型数据肯定不能排序,你的自己写泛型数据的排序函数并且适用于datagridview,我以前也碰到过这个问题,后来用datatable代替了list<>,建议你如果用datagridview数据源最好用datatable,省的麻烦
rcy5211314 2010-07-27
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mayonglong 的回复:]

点击列表头的排序??
默认就可以排序~
[/Quote]

默认就可以了
laopw123 2010-07-26
  • 打赏
  • 举报
回复
如果我用datagridview中的向导(右上角的箭头)的方法新建一个数据源,得到的表是可以点表头排序的,但是如果我用DataSourse绑定数据(数据是List<T>)功能就没了,不知道怎么才能有
wuyq11 2010-07-26
  • 打赏
  • 举报
回复
List<T> 自定义排序List<T> t=new List<T>();
t.Sort(delegate( t p1, t p2) { return p1.ID.CompareTo(p2.ID); });

public class Student
{
public string Name{get;set;}
public string Age{get;set;}
}
public class StudentComparer : IComparer<Student>
{
public enum CompareType
{
Name,
Age
}
private CompareType type;
public StudentComparer(CompareType type)
{
this.type = type;
}
public int Compare(Student x, Student y)
{
switch(this.type)
{
case CompareType.Name:
return x.Name.CompareTo(y.Name);
defaqult:
return x.Age.CompareTo(y.Age);
}
}
}
mayonglong 2010-07-26
  • 打赏
  • 举报
回复
点击列表头的排序??
默认就可以排序~
mythad 2010-07-26
  • 打赏
  • 举报
回复
http://wbzeng2008.blog.163.com/blog/static/120134027200951841328932/
malun666 2010-07-26
  • 打赏
  • 举报
回复
http://www.cnblogs.com/heekui/archive/2008/06/02/1212051.html
qjhmyn 2010-07-26
  • 打赏
  • 举报
回复
datagridview本身就有这个功能的啊,不用自定义的吧。

110,589

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧