• ASP.NET学习之GridView自带分页功能


    主要步骤:

    1、前台页面准备:

    1)准备一个GridView组件,在组件中设置好以下三个属性

    AllowPaging="True" :允许分页

    PageSize="5" :每页显示的数据条数

    OnPageIndexChanging="GridView1_PageIndexChanging":页码发生改变触发的事件

    2)按照需要准备对应的行。

    3)用后台语言绑定好对应的属性

    2、后台准备

    1)链接数据库,得到连接数据库的字符串

    2)操作数据库,得到满足条件的数据,通过SQLDataAdapter 将数据填充到DataSet中

    3)写OnPageIndexChanging事件要完成的功能代码

    具体实现代码如下:

    前台页面:

    注意里面重要的几个属性:

    AllowPaging="True" :允许分页

    PageSize="5" :每页显示的数据条数

    OnPageIndexChanging="GridView1_PageIndexChanging":页码发生改变触发的事件

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="GridView分页.aspx.cs" Inherits="分页显示数据.GridView分页" %>
    
    <!DOCTYPE html>
    
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
        <title></title>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" AllowPaging="True" PageSize="5" OnPageIndexChanging="GridView1_PageIndexChanging">
                <Columns>
                    <asp:TemplateField HeaderText="用户ID">
                       <ItemTemplate><%#Eval("Uid") %></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="主题">
                         <ItemTemplate><%#Eval("Subject") %></ItemTemplate>
                    </asp:TemplateField>
                    <asp:TemplateField HeaderText="内容">
                         <ItemTemplate><%#Eval("Content") %></ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
        </div>
        </form>
    </body>
    </html>

    后台代码:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using System.Configuration;
    using System.Data.SqlClient;
    using System.Data;
    
    namespace 分页显示数据
    {
        public partial class GridView分页 : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {          
                    BindData();          
            }
    
            //获得连接数据库的字符串
            string StrSql = ConfigurationManager.ConnectionStrings["MyDB"].ToString();
            //定义一个DateSet
            DataSet ds = new DataSet();
            /// <summary>
            /// 将数据绑定到组将GridView上【实现数据展示了】
            /// </summary>
            public void BindData()
            {
                using (SqlConnection sqlConn = new SqlConnection(StrSql))
                {
                    string str = "select * from tb_LeaveWord";
                    SqlDataAdapter sda = new SqlDataAdapter(str, sqlConn);
                    sda.Fill(ds);
                    //到目前为止就得到了满足条件的数据集合,存储在DataSet中
                    GridView1.DataSource = ds;  //给组件GridView绑定数据源
                    GridView1.DataBind();   //将数据源绑定到控件上【注意:这句话一定要写,否则数据就显示不出来】
                }
            }
    
            protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
            {
                GridView1.PageIndex = e.NewPageIndex;
                GridView1.DataBind();  
            }
        }
    }
  • 相关阅读:
    ASP.NET Core路由中间件[4]: EndpointRoutingMiddleware和EndpointMiddleware
    ASP.NET Core路由中间件[3]: 终结点(Endpoint)
    ASP.NET Core路由中间件[2]: 路由模式
    ASP.NET Core路由中间件[1]: 终结点与URL的映射
    [LeetCode] 994. Rotting Oranges 腐烂的橘子
    [LeetCode] 993. Cousins in Binary Tree 二叉树的表兄弟节点
    [LeetCode] 992. Subarrays with K Different Integers 有K个不同整数的子数组
    [LeetCode] 991. Broken Calculator 损坏的计算器
    [LeetCode] 1143. Longest Common Subsequence 最长公共子序列
    [LeetCode] 990. Satisfiability of Equality Equations 等式方程的可满足性
  • 原文地址:https://www.cnblogs.com/Yisijun/p/4591733.html
Copyright © 2020-2023  润新知