【问题标题】:How to add dynamic paging in grid view using asp.net如何使用 asp.net 在网格视图中添加动态分页
【发布时间】:2016-10-04 09:43:03
【问题描述】:

我想在一页上只显示 10 条记录,然后在第二页和第三页上显示其余的记录。当用户单击 2 时,它应该显示接下来的 10 条记录。这里我动态地向gridview输入数据。

这是我的代码

protected void Page_Load(object sender, EventArgs e)
    {
        // data load to grid view
        loadDataTable();

    }

    private void loadDataTable()
    {
        DataSet ds = new DataSet();
        DataTable dt;
        DataRow dr;

        DataColumn date;
        DataColumn designation;
        DataColumn experience;
        DataColumn location;
        DataColumn nationality;
        DataColumn details;

        dt = new DataTable();

        date = new DataColumn("Date");
        designation = new DataColumn("Designation");
        experience = new DataColumn("Experience");
        location = new DataColumn("Location");
        nationality = new DataColumn("Nationality");
        details = new DataColumn("Details");

        dt.Columns.Add(date);
        dt.Columns.Add(designation);
        dt.Columns.Add(experience);
        dt.Columns.Add(location);
        dt.Columns.Add(nationality);
        dt.Columns.Add(details);

        string cs = ConfigurationManager.ConnectionStrings["connectionStringDb"].ConnectionString;
        using (SqlConnection con = new SqlConnection(cs))
        {
            SqlCommand cmd = new SqlCommand("spGetJobPost_tb",con);

            cmd.CommandType = CommandType.StoredProcedure;

            con.Open();
            SqlDataReader rd = cmd.ExecuteReader();

            while(rd.Read())
            {
                dr = dt.NewRow();
                //DateTime dat = DateTime.ParseExact(rd["Date"].ToString(),"dd/MM/yyyy",null);
                string dates= ((DateTime)rd["Date"]).ToString("dd-MM-yyyy");
                dr["Date"] = dates;
                dr["Designation"] = rd["job_title"].ToString();
                dr["Experience"] = rd["experience"].ToString();
                dr["Location"] = rd["location"].ToString();
                dr["Nationality"] = rd["nationality"].ToString();
                dr["Details"] = "<a href='Details.aspx?id="+rd["Id"].ToString()+"' target='_blank'>View Details</a>";

                dt.Rows.Add(dr);
            }
        }
        ds.Tables.Add(dt);
        GridView1.DataSource = ds.Tables[0];
        GridView1.DataBind();
    }

asp.net 代码

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
                        <Columns>
                            <asp:BoundField DataField="Date" HeaderText="Date" />
                            <asp:BoundField DataField="Designation" HeaderText="Designation" />
                            <asp:BoundField DataField="Experience" HeaderText="Experience" />
                            <asp:BoundField DataField="Location" HeaderText="Location" />
                            <asp:BoundField DataField="Nationality" HeaderText="Nationality" />
                            <asp:BoundField HeaderText="Details" HtmlEncode="false" DataField="Details" />
                        </Columns>

                    </asp:GridView>

我是网格视图和 asp.net 的新手。

【问题讨论】:

标签: c# asp.net gridview datatable


【解决方案1】:

您可以使用AllowPagingPageSize 记录每页的记录,如给定的示例,谢谢

<asp:GridView runat="server" ID="studentsGrid" AllowPaging="true" PageSize="4">

【讨论】:

    猜你喜欢
    • 2017-07-31
    • 2018-11-05
    • 1970-01-01
    • 2014-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-13
    相关资源
    最近更新 更多