请问如何实现点击listview的每一列的标题,这一列就自动排序。

解决方案 »

  1.   

    以前遇到过这个问题,贴段代码仅供参考~~//定义一个用于排序的比较器类,实现IComparer接口 
    public class ListViewItemComparer : IComparer 
    {
    private int col;
    public ListViewItemComparer() 
    {
    col = 0;
    }
    public ListViewItemComparer(int column) 
    {
    col = column;
    }
    public int Compare(object x, object y) 
    {
    return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
    }
    }
    //事件处理
    private void processList_ColumnClick(object sender,System.Windows.Forms.ColumnClickEventArgs e)
    {
    ListView1.ListViewItemSorter = new ListViewItemComparer(e.Column);
    ListView1.Sort();
    }
      

  2.   

    使用 Windows Form 按列排序 ListView 项目
    http://www.microsoft.com/china/MSDN/library/netFramework/netframework/NFdnwinformslistviewsort.mspx
    http://www.microsoft.com/china/MSDN/library/enterprisedevelopment/softwaredev/dnwinforms.mspx