怎么写ListView使之象DateGrid一样点击某一列的头,按照这一列排序。哪为达人帮帮忙啊。或者给你相关的内容也可以的
解决方案 »
- C#接口中的契约编程,看得不是很懂,请懂的的的高手分别解释下,谢谢了
- 如何使用API?
- 请教高手给个思路。
- C#中打印纸张设置为A3的问题(在线等)
- 水晶报表的问题 CrystalReport打印多个报表 子报表打印 页数很多
- C#winfroms窗体问题!请高手指导下。。。。急啊!! 急死我啦!!!!!!!!!!!!!!
- 我公司(在深圳)現想請.net高手來講課,請有意的朋友留下msn號,我們會和您聯繫.
- 简单OR难?
- 在数据库中建立一张计算机名的表,使其打开网页页面时直接抓取并登陆???
- GDI和GDI+
- ====CSDN要完蛋了吗?初学者的问题也解决不了,都12小时了,我的问题还没有人能解决!!!彻底失望!!====
- 急求!望高手指点!DataGrid动态生成的列怎么让他不换行(切记!动态生成DataGrid)》》在线等·!来收分吧!
private int iColumn=0;
private bool iOrder=false;
private void MyListView_ColumnClick(object sender, System.Windows.Forms.ColumnClickEventArgs e)
{
if(iColumn==e.Column)
{
iOrder=!iOrder;
}
else
{
iOrder=true;
}
MyListView.Sorting=iOrder?SortOrder.Ascending:SortOrder.Descending;
MyListView.Sort();
MyListView.ListViewItemSorter=new ListViewItemComparer(e.Column,MyListView.Sorting);
iColumn=e.Column;
}class ListViewItemComparer : IComparer
{
private int col;
private SortOrder _order;
public ListViewItemComparer()
{
col=0;
this._order=SortOrder.Ascending;
}
public ListViewItemComparer(int column,SortOrder order)
{
col=column;
this._order=order;
}
public int Compare(object x, object y)
{
int returnVal=-1;
returnVal=String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
if(_order==SortOrder.Descending)
{
returnVal *=-1;
}
return returnVal;
}
}
MSDN里面有例子的。
class ListViewItemComparer : IComparer
IComparer 接口....
http://www.microsoft.com/china/MSDN/library/netFramework/netframework/NFdnwinformslistviewsort.mspx
http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/dnwinforms.mspx
ListViewItemComparer 就是自定义的类 参数是列名
list.ListViewItemSorter = new ListViewItemComparer(e.Column)
list.Sort()
http://search.csdn.net/Expert/topic/2368/2368735.xml?temp=.857937