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();

            }


        }


     

  • 相关阅读:
    LCD
    数组转字符串,字符串转数组
    谷歌浏览器中安装JsonView扩展程序
    获取文件后缀名(zip,rar等)
    jquery图片懒加载效果
    ajax 上传文件,显示进度条,进度条100%,进度条隐藏,出现卡顿就隐藏进度条,显示正在加载,再显示上传完成
    localStorage使用总结
    同源策略、跨域解决方案
    原生js获取到页面上所有的checkbox
    input="file" 浏览时只显示指定excel文件,筛选特定文件类型
  • 原文地址:https://www.cnblogs.com/ringwang/p/1054250.html
Copyright © 2011-2022 走看看