|
Forums » .NET » ASP.NET »
|
How to provide Next previous Grid paging in grid view |
Posted Date: 12 Jul 2012 Posted By:: Madhus Member Level: Silver Member Rank: 998 Points: 2
Responses:
7
|
hi was bind my data to grid view i have a lot of data so now i want provide paging 1 to 10 is numbers after ten next previous i want to apply how can i do it
<Previous 12 13 14 15 16 17 18 Next>
Thanks Madhu.
|
Responses
|
#680065 Author: jogesh Member Level: Gold Member Rank: 229 Date: 12/Jul/2012 Rating:  Points: 3 | To enable the paging feature, set the AllowPaging property to true. By default, the GridView control displays 10 records on a page at a time. You can change the number of records displayed on a page by setting the PageSize property. To determine the total number of pages required to display the data source contents, use the PageCount property. You can determine the index of the currently displayed page by using the PageIndex property.
| #680066 Author: bulli guruvu setty Member Level: Gold Member Rank: 335 Date: 12/Jul/2012 Rating:  Points: 4 | Hi Madhu,
Please go through the below example:
<asp:GridView ID="gvEmployee" runat="server" AllowPaging="True" OnPageIndexChanging="gvEmployee_PageIndexChanging" PageSize="25" Width="100%"> <Columns>
------- ------- </Columns> <PagerSettings FirstPageText="First" LastPageText="Last" NextPageText="Next" PreviousPageText="Previous" /> <PagerStyle HorizontalAlign="Center" /> </asp:GridView>
Then you need to handle gvEmployee_PageIndexChanging event as below:
protected void gvEmployee_PageIndexChanging(object sender, GridViewPageEventArgs e) { try { gvEmployee.PageIndex = e.NewPageIndex; loadgvEmployeeDetails();//Here we need to call loading the grid data again. } catch { } }
Note:
You can change the page size,PagerSettings from grid view properties.
Thanks & Regards D.Bulli Guruvu Setty
| #680068 Author: Ajatshatru Upadhyay Member Level: Gold Member Rank: 19 Date: 12/Jul/2012 Rating:  Points: 4 | Hi,
See the code below for paging in gridview. I used "Product" table of "Northwind" database to bind the gridview.
The aspx page:
<body> <form id="form1" runat="server"> <div> <asp:GridView ID="GridView1" runat="server" AllowPaging="true" PageSize="15" BackColor="Wheat" BorderColor="#336699" BorderStyle="Solid" BorderWidth="1px" CellPadding="2" Font-Names="Verdana" Font-Size="10pt" Width="60%" AutoGenerateColumns="false" onpageindexchanging="GridView1_PageIndexChanging">
<Columns> <asp:TemplateField HeaderText="Product ID"> <ItemTemplate> <%#((GridViewRow)Container).RowIndex + 1 %> </ItemTemplate> </asp:TemplateField> <asp:TemplateField> <HeaderTemplate> <asp:CheckBox ID="ChkSelectAll" runat="server" Enabled="true" ToolTip="Check to select all row in this page" onclick="return SelectAllRecords(this)" OnCheckedChanged="ChkSelectAll_CheckedChanged" /> </HeaderTemplate> <ItemTemplate> <asp:CheckBox ID="CheckBox1" runat="server" onclick="return unCheck()" /> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Product Name"> <ItemTemplate> <%#Eval("ProductName") %> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Unit Price"> <ItemTemplate> <%#Eval("UnitPrice") %> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Units in Stock"> <ItemTemplate> <%#Eval("UnitsInStock") %> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </div> </form> </body>
The C# code behind:
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { BindData(); } }
private void BindData() { SqlConnection conn; SqlCommand cmd; SqlDataAdapter sda; DataTable dt;
conn = new SqlConnection(); conn.ConnectionString = ConfigurationManager.ConnectionStrings["NWConnectionString"].ConnectionString;
cmd = new SqlCommand(); cmd.CommandText = "SELECT ProductID, ProductName, UnitPrice, UnitsInStock FROM Products"; cmd.CommandType = CommandType.Text; cmd.Connection = conn;
dt = new DataTable(); sda = new SqlDataAdapter(); sda.SelectCommand = cmd; sda.Fill(dt);
GridView1.DataSource = dt.DefaultView; GridView1.DataBind();
sda.Dispose(); cmd.Dispose(); conn.Dispose(); RePopulateCheckBoxes(); }
protected void ChkSelectAll_CheckedChanged(object sender, EventArgs e) { CheckBox chkBox;
foreach (GridViewRow gvRow in GridView1.Rows) { chkBox = (CheckBox)(gvRow.Cells[1].FindControl("CheckBox1")); chkBox.Checked = ((CheckBox)sender).Checked; } }
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e) { foreach (GridViewRow gdvrow in GridView1.Rows) { var chkbox = gdvrow.FindControl("CheckBox1") as CheckBox;
IDataItemContainer iDContainer = (IDataItemContainer)chkbox.NamingContainer;
if (chkbox.Checked) { KeepRowIndex(iDContainer.DataItemIndex); } else { RemoveRowIndex(iDContainer.DataItemIndex); } }
GridView1.PageIndex = e.NewPageIndex; BindData(); }
private List<Int32> SelectedProductIndex { get { if (ViewState["SELECTED_PRODUCT_INDEX"] == null) { ViewState["SELECTED_PRODUCT_INDEX"] = new List<Int32>(); }
return (List<Int32>)ViewState["SELECTED_PRODUCT_INDEX"]; } }
private void RemoveRowIndex(int p) { SelectedProductIndex.Remove(p); }
private void KeepRowIndex(int p) { if (!SelectedProductIndex.Exists(i => i == p)) { SelectedProductIndex.Add(p); } }
private void RePopulateCheckBoxes() { foreach (GridViewRow gvRow in GridView1.Rows) { var chkBox = gvRow.FindControl("CheckBox1") as CheckBox;
IDataItemContainer iDContainer = (IDataItemContainer)chkBox.NamingContainer;
if (SelectedProductIndex != null) { if (SelectedProductIndex.Exists(i => i == iDContainer.DataItemIndex)) { chkBox.Checked = true; } } } }
Hope it'll help you. Regards Ajatshatru
| #680089 Author: Paritosh Mohapatra Member Level: Diamond Member Rank: 6 Date: 12/Jul/2012 Rating:  Points: 3 | Please check the following code:
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" PageSize="3"> <PagerSettings FirstPageImageUrl="~/first.gif" LastPageImageUrl="~/last.gif" Mode="NextPreviousFirstLast" NextPageImageUrl="~/next.gif" PreviousPageImageUrl="~/prev.gif" /> <PagerStyle ForeColor="#8C4510" HorizontalAlign="Center" /> </asp:GridView>
Thanks & Regards Paritosh Mohapatra Microsoft MVP (ASP.Net/IIS) DotNetSpider MVM
| #680117 Author: Anil Kumar Pandey Member Level: Platinum Member Rank: 1 Date: 12/Jul/2012 Rating:  Points: 2 | This setting can be done in the pager setting as below sample code illustrate it
<PagerSettings FirstPageText="First" LastPageText="Last" NextPageText="Next" PreviousPageText="Previous" /> <PagerStyle HorizontalAlign="Center" />
Thanks & Regards Anil Kumar Pandey Microsoft MVP, DNS MVM
| #680124 Author: AnnieCalvert Member Level: Bronze Member Rank: 3297 Date: 12/Jul/2012 Rating:  Points: 2 | The ASP.NET Grid View control has a built-in paging capability that supports basic paging functionality. You can use the default paging user interface (UI) or create a custom paging interface. http://www.dapfor.com/en/net-suite/net-grid/tutorial/data-binding
| #680133 Author: Madhus Member Level: Silver Member Rank: 998 Date: 12/Jul/2012 Rating:  Points: 1 | Thanks to all, who are spending valuable time for me. if any body have an idea in custom paging please suggest me. Thanks, Madhu.
|
|
| Post Reply |
|
|
|
 | | This thread is locked for new responses. Please post your comments and questions as a separate thread. If required, refer to the URL of this page in your new post. |
|
|
|
|
 Follow us on Twitter: https://twitter.com/dotnetspider
|
|