GridView自帶的分頁功能實現(xiàn):
要實現(xiàn)GrdView分頁的功能
操作如下:
-
更改GrdView控件的AllowPaging屬性為true。
-
更改GrdView控件的PageSize屬性為 任意數(shù)值(默認為10)
-
更改GrdView控件的PageSetting->Mode為Numeric等(默認為Numeric)該屬性為分頁樣式。
GridView屬性設(shè)置好了,從頁面上也能看到分頁樣式。
現(xiàn)在開始實現(xiàn)分頁的功能:
-
在<<asp:GridView ID=......>后添加,OnPageIndexChanging="GridView1_PageIndexChanging"
-
在對應(yīng)的aspx.cs中添加:
1
2
3
4
5
|
protected void GridView1_PageIndexChanging( object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; InitPage(); //重新綁定GridView數(shù)據(jù)的函數(shù) } |
參考代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="gridview_zidaifenye.aspx.cs" Inherits="gridview_zidaifenye" %> <!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" AllowPaging = "True" AllowSorting = "True" AutoGenerateColumns = "False" DataKeyNames = "ID" PagerSettings-Mode = "Numeric" OnRowDataBound = "GridView1_RowDataBound" PageSize = "5" OnPageIndexChanging = "GridView1_PageIndexChanging" > < Columns > < asp:BoundField DataField = "ID" HeaderText = "ID" InsertVisible = "False" ReadOnly = "True" SortExpression = "ID" /> < asp:BoundField DataField = "Name" HeaderText = "Name" SortExpression = "Name" /> < asp:BoundField DataField = "Stock" HeaderText = "Stock" SortExpression = "Stock" /> </ Columns > </ asp:GridView > 每頁顯示< asp:DropDownList ID = "DropDownList1" runat = "server" AutoPostBack = "True" OnSelectedIndexChanged = "DropDownList1_SelectedIndexChanged" > < asp:ListItem >5</ asp:ListItem > < asp:ListItem >10</ asp:ListItem > < asp:ListItem >15</ asp:ListItem > </ asp:DropDownList > 條記錄 < asp:Label ID = "lblMsg" runat = "server" ></ asp:Label > </ div > </ form > </ body > </ html > |
后臺代碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class gridview_zidaifenye : System.Web.UI.Page { DBAccess db = new DBAccess(); protected void Page_Load( object sender, EventArgs e) { if (!IsPostBack) { // gvProduct.DataSource = getData(); // gvProduct.DataBind(); BindGrid(); } } public void BindGrid() { SqlCommand comm = db.CreateCommand( "select * from product p,Uuser u where p.userid=u.id" ); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = comm; DataSet ds = new DataSet(); sda.Fill(ds, "Datatable" ); DataView dv = ds.Tables[0].DefaultView; GridView1.DataSource = dv; GridView1.DataBind(); } protected void DropDownList1_SelectedIndexChanged( object sender, EventArgs e) { GridView1.PageSize = int .Parse(DropDownList1.SelectedValue); GridView1.PageIndex = 0; BindGrid(); //GridView1.DataBind(); } protected void GridView1_RowDataBound( object sender, GridViewRowEventArgs e) { lblMsg.Text = "當(dāng)前頁為第" + (GridView1.PageIndex + 1).ToString() + "頁,共" + (GridView1.PageCount).ToString() + "頁" ; } protected void GridView1_PageIndexChanging( object sender, GridViewPageEventArgs e) { GridView1.PageIndex = ((GridViewPageEventArgs)e).NewPageIndex; BindGrid(); //重新綁定GridView數(shù)據(jù)的函數(shù) } } |
總結(jié)下,方便以后用到。
以上就是本文的全部內(nèi)容,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,同時也希望多多支持服務(wù)器之家!
原文鏈接:http://www.cnblogs.com/jycboy/p/5172380.html