首页
学习
活动
专区
工具
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控件的排序和分页功能。

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

相关·内容

共14个视频
CODING 公开课训练营
学习中心
本训练营包含 7 大模块,具体为敏捷与瀑布项目管理、代码管理、测试管理、制品管理、持续部署与应用管理。从 DevOps 全链路上每个模块的业界理念和方法论入手,以知其然并知其所以然为设计理念,并结合 CODING 平台的工具实操教学,给出规范示例,不仅能帮助学习者掌握 DevOps 的理论知识,更能掌握 CODING 平台各产品模块的正确使用方式,并进行扩展性的实践。
共50个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-1
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
共50个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-2
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
共50个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-3
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
共18个视频
动力节点-【CRM客户管理系统】SSM框架项目实战教程-4
动力节点Java培训
这套教程是动力节点最新录制的CRM项目,课程主要针对核心的客户关系管理业务功能进行实现,让你能够深层掌握主流SSM框架、Linux操作系统下部署项目、数据库设计原则和技巧、数据如何通过图表在页面展示、Java对excel文件的处理,学会使用项目管理工具Maven、版本控制工具Git,以及缓存在项目中的运用熟悉前端开发技术及常见的特效等。 通过课程可以了解项目开发流程及项目开发各阶段主要文档及产出物
领券