zoukankan      html  css  js  c++  java
  • C# ListView中点击表头ColumnClick实现对相应列的排序

    private void listView1_ColumnClick(object sender, ColumnClickEventArgs e)
            {
                
    if (listView1.Columns[e.Column].Tag == null)
                {
                    listView1.Columns[e.Column].Tag 
    = true;
                }
                
    bool tabK = (bool)listView1.Columns[e.Column].Tag;
                
    if (tabK)
                {
                    listView1.Columns[e.Column].Tag 
    = false;
                }
                
    else
                {
                    listView1.Columns[e.Column].Tag 
    = true;
                }
                listView1.ListViewItemSorter 
    = new ListViewSort(e.Column, listView1.Columns[e.Column].Tag);
                
    //指定排序器并传送列索引与升序降序关键字
                listView1.Sort();//对列表进行自定义排序
            }


             
    //排序类的定义:

            
    ///
            
    ///自定义ListView控件排序函数
            
    ///
            public class ListViewSort : IComparer
            {
                
    private int col;
                
    private bool descK;

                
    public ListViewSort()
                {
                    col 
    = 0;
                }
                
    public ListViewSort(int column, object Desc)
                {
                    descK 
    = (bool)Desc;
                    col 
    = column; //当前列,0,1,2...,参数由ListView控件的ColumnClick事件传递
                }
                
    public int Compare(object x, object y)
                {
                    
    int tempInt = String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
                    
    if (descK)
                    {
                        
    return -tempInt;
                    }
                    
    else
                    {
                        
    return tempInt;
                    }
                }
            } 
  • 相关阅读:
    .NET开发人员如何开始使用ML.NET
    微软开源 Try .NET
    在kubernetes 集群内访问k8s API服务
    微软发布ML.NET 1.0
    现代“十二要素应用”与 Kubernetes
    .NET和Docker ,比翼双飞
    .NET Core 时代已经到了,你准备好了吗
    一份.NET 容器化的调查小结
    容器化时代我们应当选择Kubernetes
    机器学习 ML.NET 发布 1.0 RC
  • 原文地址:https://www.cnblogs.com/dj1232090/p/1239555.html
Copyright © 2011-2022 走看看