Gridview 分页不起作用?

山姆

当我尝试为gridview实现分页时,如下所示,但是当我单击页码时,页面未加载。没有异常或错误出现?

我尝试了这里的建议但没有奏效。

最后有什么代码改进吗?这可以以更好的方式完成吗?

代码标记

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="LoanReports.aspx.cs" Inherits="BankingDemo.LoanReports" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Banking Site (Demo)</title>
</head>
<body>
    <form id="form" runat="server">
        <asp:GridView ID="GridView1" runat="server" OnPageIndexChanging="GridView1_PageIndexChanging" AutoGenerateColumns="False" AllowPaging="true" PageSize="10" HeaderStyle-BackColor="CornflowerBlue" HeaderStyle-Font-Bold="true" HeaderStyle-ForeColor="White" CellPadding="5" AllowSorting="True" A`enter code here`llowCustomPaging="False" AutoGenerateSelectButton="True" PagerSettings-Mode="Numeric">
             <Columns>
                 <asp:BoundField DataField="Code" HeaderText="Code" />
                 <asp:BoundField DataField="name" HeaderText="name" />
                 <asp:BoundField DataField="Continent" HeaderText="Continent" />
                 <asp:BoundField DataField="Region" HeaderText="Region" />
                 <asp:BoundField DataField="SurfaceArea" HeaderText="SurfaceArea" />
<%--                 <asp:BoundField DataField="IndepYear" HeaderText="IndepYear" />
                 <asp:BoundField DataField="population" HeaderText="population" />
                 <asp:BoundField DataField="LifeExpectancy" HeaderText="LifeExpectancy" />
                 <asp:BoundField DataField="GNP" HeaderText="GNP" />
                 <asp:BoundField DataField="GNPOld" HeaderText="GNPOld" />
                 <asp:BoundField DataField="LocalName" HeaderText="LocalName" />
                 <asp:BoundField DataField="GovernmentForm" HeaderText="GovernmentForm" />
                 <asp:BoundField DataField="HeadOfState" HeaderText="HeadOfState" />
                 <asp:BoundField DataField="Capital" HeaderText="Capital" />
                 <asp:BoundField DataField="Code2" HeaderText="Code2" />--%>
             </Columns>
        </asp:GridView>
    </form>
</body>
</html>

c#代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MySql;
using MySql.Data;
using MySql.Data.Types;
using MySql.Data.MySqlClient;
using System.Configuration;
using System.Data;

namespace BankingDemo
{
    public partial class LoanReports : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if(!this.IsPostBack)
            {
                get_table();
            }
        }
        private void get_table()
        {
            string ConnStr = ConfigurationManager.ConnectionStrings["ConnConfig"].ConnectionString;
            string cmdTxt = @"select Code,
                                     name,
                                     Continent,
                                     Region,
                                     SurfaceArea,
                                     IndepYear,
                                     population,
                                     LifeExpectancy,
                                     GNP,
                                     GNPOld,
                                     LocalName,
                                     GovernmentForm,
                                     HeadOfState,
                                     Capital,
                                     Code2
                                from world.country";

            try
            {
                using (MySqlConnection conn = new MySqlConnection(ConnStr))
                using (MySqlCommand cmd = new MySqlCommand(cmdTxt))
                {
                    conn.Open();

                    using (MySqlDataAdapter myadapter = new MySqlDataAdapter())
                    {
                        cmd.Connection = conn;
                        myadapter.SelectCommand = cmd;

                        using (DataTable dt = new DataTable())
                        {
                            myadapter.Fill(dt);
                            GridView1.DataSource = dt;
                            GridView1.DataBind();
                        }
                    }
                }
            }
            catch (Exception ex)
            {

            }
        }

        protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            GridView1.PageIndex = e.NewPageIndex;
            GridView1.DataBind();
        }
    }
}
约格什喀拉利亚

作为一个简单的解决方案,更改 PageIndexChanging 方法。只需在您的代码中调用 get_table() 方法。查看更新后的代码。

protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
        GridView1.PageIndex = e.NewPageIndex;
        get_table();
    }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章