`
高成锋
  • 浏览: 52758 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

GridView 字段排序

    博客分类:
  • .NET
阅读更多

前台代码:

<asp:GridView ID="GView1" runat="server" Height="10px" Width="950px" AllowSorting="true"

     OnSorting="GridView1_Sorting">

</asp:GridView>

注解:

AllowSorting="true" //该属性设置将使用控件的排序功能

OnSorting="GridView1_Sorting"  //调用排序的方法实现

 

后台代码:

排序实现的方法:

protected void GridView1_Sorting(object sender, GridViewSortEventArgs e)

{

     string sortExpression = e.SortExpression;

     if (GridViewSortDirection == SortDirection.Ascending) //设置排序方向

     {

         GridViewSortDirection = SortDirection.Descending;

         SortGridView(sortExpression, " DESC");

      }

      else

      {

         GridViewSortDirection = SortDirection.Ascending;

         SortGridView(sortExpression, " ASC");

      }

}

注解:

//GridViewSortDirection就是接下来定义的函数名

//SortGridView也是下面定义的函数

 

protected SortDirection GridViewSortDirection

{

    get

    {

         if (ViewState["sortDirection"] == null)

            ViewState["sortDirection"] = SortDirection.Ascending;

              // ViewState["sortDirection"]可以获取到页面GridViewsortDirection属性的值

         return (SortDirection)ViewState["sortDirection"];

    }

    set { ViewState["sortDirection"] = value; }

 }

 

 

protected void SortGridView(string sortExpression, string direction)

{    

     String sql = select id,name,score1,score2,total from dual;

     DataTable dat1 = new Dbind().SelectFormForum(sql); 

//查找数据源,因为我们是要对已经呈现在页面上的报表信息按字段进行排序,所以我们在这里获取的

//数据集应该和页面呈现时调用的是一样的,也就是将一开始的查询从新走了一遍,同时在sql语句

//加入了相对应字段的排序代码,然后再次绑定到GridView控件中呈现出来.

// new Dbind().SelectFormForum(sql)只是用户自定义的执行查询的功能函数

 

    DataView dv = new DataView(dat1);

    dv.Sort = sortExpression + direction;   //设置排序的字段和排序方式

    GView1.DataSource = dv;

    GView1.DataBind();

}

 

执行操作流程:

1.    点击某个字段的标题时,触发了函数GridView1_Sorting

2.    在函数GridView1_Sorting中调用GridViewSortDirection函数去判断排序方式,进而去执行对应的排序方式.

3.    GridViewSortDirection函数可以获取页面设置控件的排序方式

4.    调用SortGridView函数,查询出数据集,拼接字段及其排序方式,加入到控件属性中,绑定数据源

分享到:
评论

相关推荐

    怎么获得gridview 字段值

    ### 如何在ASP.NET中获取GridView字段值 在ASP.NET Web应用程序中,`GridView`控件是一种非常常用的数据展示方式,它可以将数据源中的数据以表格的形式显示出来,并且提供了强大的自定义功能,如排序、分页等。本文...

    GridView正反排序(C#)

    - **SortExpression**:指定排序依据的字段名。 ##### 后台代码分析 后台代码实现了`GridView`的绑定逻辑及排序功能。 ```csharp public partial class asp_Test_Default38 : System.Web.UI.Page { protected ...

    gridview的排序和分页功能

    3. **自定义排序**: 如果需要实现更复杂的排序逻辑,如多字段排序,可以在事件处理程序中编写自定义的排序算法,然后使用`DataBind()`方法重新加载排序后的数据。 **二、GridView分页功能** 1. **启用分页**: 设置...

    GridView查询排序分页

    GridView是ASP.NET Web Forms中一个常用的控件,用于显示数据集合,并支持用户交互,如排序、分页和筛选。在本教程中,我们将深入探讨如何实现GridView查询排序和分页功能。 首先,GridView控件的核心在于它与数据...

    arcgisserver中gridview隐藏字段

    GridView是ASP.NET中的一个控件,用于显示来自数据源的数据,并允许用户进行排序、分页和编辑。在ArcGIS Server中,它通常与ArcGIS服务结合,用于显示地图服务或地理处理服务返回的属性数据。 隐藏字段涉及到对数据...

    利用AJAX 实现GRIDVIEW无刷新 排序源码

    在本文中,我们将深入探讨如何利用AJAX技术实现GRIDVIEW控件的无刷新排序功能。在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种创建动态和交互性网页的技术,它允许页面部分数据的异步更新,无需整体...

    GridView实现正反双向排序功能

    `SortExpression`属性是关键,它指定了用于排序的数据库字段名。 接下来,我们需要在代码-behind文件中处理排序事件。在C#中,这通常是在`GridView1_Sorting`事件中完成的: ```csharp protected void GridView1_...

    Gridview无刷新排序

    2. **WebMethod或PageMethod**:在服务器端创建一个可以处理排序请求的方法,该方法接收排序参数(如排序字段和排序方向),然后返回排序后的数据。 3. **JavaScript/jQuery事件处理**:监听GridView列头的点击事件...

    Gridview点击列头排序 .doc

    在ASP.NET Web应用程序中,GridView控件是一种常用的数据显示控件,它可以用来展示表格形式的数据,并提供了多种交互功能,包括点击列头排序。本篇将详细解释如何实现GridView点击列头进行排序的功能。 首先,要在...

    GridView排序.rar

    本压缩包“GridView排序.rar”包含了一个名为“GridView排序.txt”的文本文件,很显然,内容是关于如何实现GridView控件的数据排序功能。GridView排序是一个关键特性,它允许用户根据列的值对数据进行升序或降序排列...

    GridView正反双向排序

    在ASPX文件中,GridView被配置为允许排序,且每一列都指定了其对应的数据库字段、显示文本和排序表达式。 #### 四、关键代码片段解读 ```csharp // 处理排序事件 protected void GridView1_Sorting(object sender...

    C#GridView的例题

    你可以根据需要自定义GridView的列类型,例如BoundField(文本字段)、TemplateField(模板字段)、CheckBoxField(复选框字段)等。TemplateField允许嵌入其他控件或HTML,实现复杂的布局和功能。 4. ** 编辑和...

    GridView无刷新排序(Ajax+ASP.NET+XML)

    4. **绑定GridView**:将GridView的数据源设置为XmlDataSource,并设置好列的字段映射。 5. **实现排序**:为Button添加一个Click事件处理程序。在事件处理程序中,根据用户点击的列头改变XML数据的排序方式(可以...

    gridview排序

    当用户点击列头时,GridView会向服务器发送一个请求,服务器根据请求的字段重新排序数据,然后返回更新后的GridView。这种方式简单且易于实现,但可能会增加服务器的负载,因为每次排序都需要重新绑定整个数据集。 ...

    gridview中的第一列想实现1,2,3序号

    这个问题是许多Web开发者在使用GridView时经常遇到的,尤其是在需要显示数据行的索引或者进行简单排序的情况下。 ### GridView中设置自增序号的方法 #### 方法一:通过`Container.ItemIndex` 这种方法相对简单,...

    gridview 编辑 修改 删除 排序 自动加列 背景色 excel表

    你可以遍历数据源的字段,为每个字段创建一个新的` BoundField`或`TemplateField`,然后将其添加到GridView的`Columns`集合中。 背景色的设定可以提升GridView的视觉效果。通过CSS或在`RowDataBound`事件中设置行的...

    Gridview自动排序功能的实现

    在ASP.NET Web应用程序中,`GridView`控件是一种常用的数据显示组件,它允许用户以表格形式展示数据,并提供了多种交互功能,如分页、排序、筛选等。本文将深入讲解如何实现`GridView`的自动排序功能。 首先,实现`...

    ASPXGridView详解

    ### ASPXGridView详解 #### 一、ASPXGridView外观显示 **ASPXGridView** 是一个功能强大的网格控件,常用于展示和管理大量数据。它提供了丰富的特性来满足不同的应用场景需求。 - **Caption**: 设置列的标题。...

Global site tag (gtag.js) - Google Analytics