zoukankan      html  css  js  c++  java
  • GridView自动排序

    GridView的功能很强大,可以实现很多的功能,下面我讲下GridView自动排序的实现方法。

     /// <summary>
        
    /// GridView排序
        
    /// </summary>
        
    /// <param name="sender"></param>
        
    /// <param name="e"></param>

        protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)
        
    {


            
    if (GridViewSortExpression.Equals(e.SortExpression))
            
    {
                GridViewSortExpression 
    = e.SortExpression;
                
    if (GridViewSortDirection.Equals("ASC"))
                
    {
                    GridViewSortDirection 
    = "DESC";
                    
    this.GridView1.DataSource = SortDataTable(数据源false);
                }

                
    else if (GridViewSortDirection.Equals("DESC"))
                
    {
                    GridViewSortDirection 
    = "ASC";
                    
    this.GridView1.DataSource = SortDataTable(数据源true);
                }

                
    else
                
    {
                    GridViewSortDirection 
    = "ASC";
                    
    this.GridView1.DataSource = SortDataTable(数据源true);
                }

            }

            
    else
            
    {
                GridViewSortDirection 
    = "ASC";
                GridViewSortExpression 
    = e.SortExpression;
                
    this.GridView1.DataSource = SortDataTable(数据源true);
            }

            
    this.GridView1.DataBind();

        }

        
    /// <summary>
        
    /// 排序,并保存排序结果
        
    /// </summary>
        
    /// <param name="dataTable"></param>
        
    /// <param name="isPageIndexChanging"></param>
        
    /// <returns></returns>

        protected DataView SortDataTable(DataTable dataTable, bool isPageIndexChanging)
        
    {

            
    if (dataTable != null)
            
    {

                DataView dataView 
    = new DataView(dataTable);

                
    if (GridViewSortExpression != string.Empty)
                
    {

                    
    if (isPageIndexChanging)
                    
    {

                        dataView.Sort 
    = string.Format("{0} {1}", GridViewSortExpression, "ASC");

                    }


                    
    else
                    
    {

                        dataView.Sort 
    = string.Format("{0} {1}", GridViewSortExpression, "DESC");

                    }

                    
    //if (Session["FileListTable"] != null)  
                    
    //    Session["FileListTable"] = GetDataTable(dataView);        

                }


                
    return dataView;

            }


            
    else
            
    {

                
    return new DataView();

            }


        }


     

  • 相关阅读:
    算法初步——贪心B1020/A1070月饼
    class.forname()用法 转
    java的几种连接池
    java中调用xml的方法:DocumentBuilderFactory
    java中HashMap详解
    使用J2SE API读取Properties文件的六种方法
    java读取properties配置文件信息
    学习(二)
    json入门(二)
    什么是序列化?在什么情况下将类序列化?
  • 原文地址:https://www.cnblogs.com/ringwang/p/1054250.html
Copyright © 2011-2022 走看看