Dear Friends,
Please clarify my doubt in Grid virtual paging
Am binding the grid in page load ,my objective is If am
having 1000 records in my DB means I don't want to load all records in page load,
I want to load the records based on page index change.
Am having 10 records per each page, if am having 50 records
in db means it should be split up by 10 and it should display it 5 pages, If I
click the 2nd page it should be display 11 to 20 records.
If am having 15 records in my Db means paging must be 1 2 in first page 10
records, 2nd page 5 records likewise it should display
First page should display 10 records, when I click the
second page it should pick the next 10 records from Database.
How can I achieve this scenario?

Naresh AvariPosted Aug 2, 2012, 5:44 AM
It is just so simple.....
GridView:
Here I am Binding Datagrid in Page_Load:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//Here you GridView binding
BindGrid();
}
}
Here I am Changing Page Index:
protected void gvProducts_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gvProducts.PageIndex = e.NewPageIndex;
BindGrid();
}
I hope this helps...
Satyapriya NayakPosted Aug 2, 2012, 4:05 AM
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Paging_in_GridView._Default" %>
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
namespace Paging_in_GridView
{
public partial class _Default : System.Web.UI.Page
{
string connStr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
SqlCommand com;
SqlDataAdapter sqlda;
DataSet ds;
string str;
protected void Page_Load(object sender, EventArgs e)
{
bindgrid();
}
void bindgrid()
{
SqlConnection con = new SqlConnection(connStr);
con.Open();
str = "select * from employee";
com = new SqlCommand(str, con);
sqlda = new SqlDataAdapter(com);
ds = new DataSet();
sqlda.Fill(ds, "employee");
g1.DataMember = "employee";
g1.DataSource = ds;
g1.DataBind();
con.Close();
}
protected void g1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
g1.PageIndex = e.NewPageIndex;
bindgrid();
}
}
}
Thanks
If this post helps you mark it as answer