首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用gridview asp.net进行排序和分页

在这个问题中,我们需要实现一个基于ASP.NET的GridView控件的排序和分页功能。下面是一个简单的实现方法:

  1. 首先,在ASP.NET页面中添加GridView控件,并设置其属性,如下所示:
代码语言:html
复制
<asp:GridView ID="GridView1" runat="server" AllowSorting="True"
    AutoGenerateColumns="False" DataKeyNames="ID"
    DataSourceID="SqlDataSource1" AllowPaging="True"
    PageSize="10">
   <Columns>
        <asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True" SortExpression="ID" />
        <asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
        <asp:BoundField DataField="Age" HeaderText="Age" SortExpression="Age" />
        <asp:BoundField DataField="Country" HeaderText="Country" SortExpression="Country" />
    </Columns>
</asp:GridView>
  1. 接下来,在后端代码中添加数据源,并设置其属性,如下所示:
代码语言:csharp
复制
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
    ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
    SelectCommand="SELECT * FROM [Users]"
    SortParameterName="sortExpression"
    OnSelecting="SqlDataSource1_Selecting">
</asp:SqlDataSource>
  1. 在后端代码中添加Selecting事件处理程序,如下所示:
代码语言:csharp
复制
protected void SqlDataSource1_Selecting(object sender, SqlDataSourceSelectingEventArgs e)
{
    string sortExpression = e.SortExpression;
    if (!string.IsNullOrEmpty(sortExpression))
    {
        e.Command.Parameters["@sortExpression"].Value = sortExpression;
    }
}
  1. 最后,在后端代码中添加分页和排序功能,如下所示:
代码语言:csharp
复制
protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        GridView1.DataSource = GetData();
        GridView1.DataBind();
    }
}

private DataTable GetData()
{
    string connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
    string query = "SELECT * FROM [Users] ORDER BY " + GridView1.SortExpression + " " + GetSortDirection();
    SqlConnection connection = new SqlConnection(connectionString);
    SqlCommand command = new SqlCommand(query, connection);
    SqlDataAdapter adapter = new SqlDataAdapter(command);
    DataTable dataTable = new DataTable();
    adapter.Fill(dataTable);
    return dataTable;
}

private string GetSortDirection()
{
    string sortDirection = "ASC";
    if (GridView1.SortExpression.EndsWith(" DESC"))
    {
        sortDirection = "DESC";
    }
    return sortDirection;
}

这样,我们就实现了基于ASP.NET的GridView控件的排序和分页功能。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ASP.NET MVC5中实现具有服务器端过滤、排序分页GridView

背景 在前一篇文章《【初学者指南】在ASP.NET MVC 5中创建GridView》中,我们学习了如何在 ASP.NET MVC 中实现 GridView,类似于 ASP.NET web 表单的功能。...通过前文,我们已经了解到使用 jQuery 插件的数据表可以很容易地实现具有搜索、排序分页等重要功能的表格。 ?...在这之后,我们就实现了排序逻辑,排序列的信息附带在使用自定义模型绑定的模型中,使用 System.Linq.Dynamic 我们能够避免 if switch 语句,我们将列迭代在用户请求的排序上,并且通过以下代码排列行...现在 build 这个工程并在浏览中运行,就可以查看带有服务器端过滤、分页排序GridView 了。...在服务器端实现表格的过滤、分页排序等功能,能够减少客户端数据处理的任务量,方便更好更快的加载并显示数据。

5.4K80

GridView实战一:自定义分页排序、修改、插入、删除

,本文后面的另一篇GridView实战二:使用ObjectDataSource数据源控件均是这段时间的一些总结。   ...GridView优点就是集数据绑定、分页排序、删、改于一身,提高了开发效率;缺点嘛,就是运行效率低,并且它本身不带添加功能。...;因为使用了验证控件,所以把取消按钮(操作不验证合法性)设为不触发验证。 4.分页功能:本例是将分页功能放置到gridview的PagerTemplate中实现。...引发 SelectedIndexChanging  SelectedIndexChanged 事件。 “Sort” 对 GridView 控件进行排序。...关于ObjectDataSource配合GridView使用将在《GridView实战二:使用ObjectDataSource数据源控件》讲述。

2.6K100

使用Spring Data JPA进行数据分页排序

所以处理较大数据查询结果展现的时候,分页查询是必不可少的。分页查询必然伴随着一定的排序规则,否则分页数据的状态很难控制,导致用户可能在不同的页看到同一条数据。...那么,本文的主要内容就是给大家介绍一下,如何使用Spring Data JPA进行分页排序。...首先将ArticleRepository注入到你需要进行持久层操作的类里面,通常是一个@Service注解的类,然后在服务方法内使用如下代码进行分页操作:查询第一页(从0开始)的数据,每页10条数据。...但是笔者不建议这样进行转换,因为前端展示一个分页列表,不仅需要数据,而且还需要一些分页信息。如:当前第几页,每页多少条,总共多少页,总共多少条。...第一个findAll方法是按照author的升序排序,再按照createTime的降序进行排序 分页排序在一起 Pageable pageable = PageRequest.of(0, 10,Sort.by

3.6K20

编程小记 -- ASP.NETGridView使用教程

最近有个ASP.NET的小Demo,用到一些ASP.NET的知识,本篇讲的是ASP.NETGridView使用GridView使用还是非常方便的,包括数据的动态绑定,表格的编辑都非常简单,不用再为...本篇教程说是GridView的教程,其实是整个功能实现的总结,包括我编程时的思路、实现功能的小技巧等等。...3 :查看了下整个2012年数据没问题(select OrderID from tb_OrderInfo where YEAR(OrderDate) =2012;)可以考虑使用for循环了: ?...还有一个表格GridView,用于显示排行榜数据(PS:vs全屏撸代码快捷键:使用组合键“ SHIFT + ALT + ENTER ”。): ?...四 排行榜功能逻辑实现 直接在billborad.aspx.cs里面写逻辑代码,这个没什么可讲的,只要是GridView使用: 1 :设置GridView的数据源 -- DataTable ?

2K20

ASP.NET 2.0数据处理之高级分页排序

如果你启用了表格的分页排序功能,在执行分页排序操作之后,SelectedIndex的值仍然不会变化,因此在执行这些操作之后,一个新数据行被选中了。...下面的例子演示了如何在排序分页操作之后仍然保留当前选中的数据行。...) ' 重置选择索引 GridView1.SelectedIndex = -1 End Sub GridViewDetailsView还支持一种用于分页排序的特殊模式,它利用客户端向服务器的回调(callback...请注意,当我们执行分页排序操作的时候,页面不需要发回(postback)以检索新值(尽管执行了客户端脚本向服务器的回调操作)。...…… </asp:GridView> 尽管GridView、DetailsViewFormView为分页器(pager)UI提供了默认的显示方式,你仍然可以通过设置PagerTemplate属性来自定义分页器的显示

1.3K20

ObjectDataSource与GridView配合使用经验总结系列二:分页

令我使用ObjectDataSource配合GridView显示数据的最重要的原因之一就是ObjectDataSource的分页功能,其实GridView本身就自带一个分页功能,但是GridView...自带的分页功能必须把整个数据集绑定到GirdView,然后把分页工作交给GridView,方便是方便但效率十分低,而ObjectDataSource采用的是要哪一页的数据就取哪一页,性能上明显高不少。...ObjectDataSource的EnablePaging属性GridView的AllowPaging属性都设置为True,这样分页才能生效;   2.设定分页后,SelectMethod对应的方法必须定义为含...maximumRows, int startRowIndex两个参数的查询方法,其中maximumRows就是每页的记录数,startRowIndex就是请求页的首条记录在整个数据集中的索引;   3.设定分页后...就这样分页就完成了,是不是很简单呢!! 下一篇:ObjectDataSource与GridView配合使用经验总结系列三:排序

59480

SpringBoot整合Mybatis,使用通用mapperPageHelper进行分页

乐哉码农 上节介绍了如何整合Security,这节就说下如何再Springboot下使用持久层框架mybatis牛人封装的通用mapper与mybatis的整合,直接进入正题吧!...对于mapper里面封装的crud方法,我这里值=只着重讲一个查询(模糊查询),也许是使用的最常见的,也是mapper里面使用的最麻烦的一个方法,我这里对他进行了一个简单的封装: 4.原始的mapper...MapperUtils.java 到这里为止,已经将mybatis的集成通用mapper的使用介绍完毕,最后再介绍一个插件PageHelper的使用 5.PageHelper的集成与使用 我们再做项目时...,避免不了会进行分页,我们会自己进行去下分页语句,mysql会使用limit,sqlserver使用top,oracle使用rownumber实现,会不会觉得很不方便,今天我为给大家介绍一下PageHelper...分页代码的实现 感谢大家能看到这里,文中讲的不正确的地方,欢迎在下方留言,我会及时修正。

1.3K10

【初学者指南】在ASP.NET MVC 5中创建GridView

介绍 在这篇文章中,我们将会学习如何在 ASP.NET MVC 中创建一个 gridview,就像 ASP.NET Web 表单中的 gridview 一样。...服务器端客户端有许多可用的第三方库,这些库能够提供所有必需的功能,如 Web 表格中的搜索、排序分页等。是否包含这些功能,取决于应用的特殊需求,例如在客户端和服务器端提供搜索或其它功能的需求等。...例如,一种情景是:因为数据库中有太多的数据,所以在客户端的进行分页并不是一个好选择。表格中有百万行数据,如果用客户端分页功能来绑定,页面就会由于大量的数据行处理HTML渲染而反应很迟钝。...我们将会实现一个具有搜索、排序分页功能的工作表,正如下图中我们看到的: ?...在下一篇文章中,我们将会学习到如何通过使用服务器端分页排序过滤来使页面呈现的更好。对于具有大量的数据时,这是一个更好的方法。

6.1K90
领券