1. 程式人生 > >GridView其中兩種分頁

GridView其中兩種分頁

     GridView的分頁功能在使用過程中很便捷,也很容易理解,下面來介紹兩種較為常用的方式。

     GridView這個控制元件內部就有一個自帶的分頁功能,設定方便,使用也比較容易,在介面上放一個數據源控制元件,配置好以後為GridView繫結上資料來源,AllowPaging的屬性設定為“true”讓GridView來支援分頁功能,剩下的就在PageSetting中設定自己的分頁的樣式以及屬性就行了。這種方法沒有什麼後臺程式碼,點幾下滑鼠就可以達到目的。

      還有一種實現GridView分頁的方法,使用SqlServer的儲存過程來實現的這樣的儲存過程在網上會有很多,下面是我用的一個儲存過程:

ALTER PROCEDURE [dbo].[sp_MyBolg_Select_by_Page_rowNumber]
 -- Add the parameters for the stored procedure here
 @pageSize int,  --每頁記錄數量
 @pageCount int output,  --總頁數
 @pageIndex int  --當前頁索引號
AS
BEGIN
declare @totalRecords int
select @totalRecords = count(Bid) from Bolg     
if(@totalRecords % @pageSize = 0)
 set @pageCount = @totalRecords / @pageSize;
else
 set @pageCount = @totalRecords / @pageSize +1;
with temp as (select row_number() over (order by Bid) as id,* from Bolg)
select * from temp where id between (@pageIndex -1)*@pageSize +1 and @pageIndex * @pageSize
return @totalRecords
end
編輯完成這個儲存過程就可以進入Visual Stidio中來繼續做自己的GridView的分頁了

在後臺的頁面載入(Page_Load)事件中連線好資料庫,執行下這個儲存過程就可以在GridView中看到這個翻頁效果了:



  string str = System.Configuration.ConfigurationManager.ConnectionStrings["studentConnectionString"].ConnectionString;
        using (SqlConnection sqlcnn = new SqlConnection(str))
        {
            SqlCommand sqlcmm = sqlcnn.CreateCommand();
            sqlcmm.CommandText = "sp_Student_Select_by_Page_rowNumber";
            sqlcmm.CommandType = System.Data.CommandType.StoredProcedure;
            sqlcmm.Parameters.AddWithValue("@pageSize", 3);
            sqlcmm.Parameters.Add("@pageCount", SqlDbType.Int).Direction =
                ParameterDirection.Output;
            sqlcmm.Parameters.AddWithValue("@pageIndex", pageIndex);
            SqlDataAdapter da = new SqlDataAdapter(sqlcmm);
            DataSet ds = new DataSet();
            da.Fill(ds);
            this.GridView1.DataSource = ds.Tables[0];
            this.GridView1.DataBind();

            //這兩個HiddenField控制元件僅僅是為了記錄pageIndex的值 
            this.HiddenField1.Value = pageIndex.ToString();
            this.HiddenField2.Value = sqlcmm.Parameters["@pageCount"].Value.ToString();
            this.Label1.Text = pageIndex + "/" + this.HiddenField2.Value;

       }

不過利用這種方法的話就不一定只能使用GridView控制元件了 ,還可以使用其他的控制元件來實現,比如Table等。

相關推薦

GridView其中

     GridView的分頁功能在使用過程中很便捷,也很容易理解,下面來介紹兩種較為常用的方式。      GridView這個控制元件內部就有一個自帶的分頁功能,設定方便,使用也比較容易,在介面上放一個數據源控制元件,配置好以後為GridView繫結上資料來源,All

bootstrap table需要的數據不同

正常的 ant res code 服務 fresh bootstrap .net body 先上原帖地址:http://blog.csdn.net/tyrant_800/article/details/50269723 問題描述:   調用$("#show_list_tab

方式

分頁查詢兩種方式之 Offset ...Rows  Fetch Next ... Rows only Offset ...Rows  Fetch Next ... Rows only 方式 在2012後採用這種方式越來越多 原理介紹:類似於 Linq

PostgreSQL方法查詢時間比較

資料庫中存了3000W條資料,兩種分頁查詢測試時間 第一種 SELECT * FROM test_table WHERE i_id>1000 limit 100; Time: 0.016s 第二種 SELECT * FROM test_table  limi

mybatis框架的

mybatis有兩種分頁方法 1、記憶體分頁,也就是假分頁。本質是查出所有的資料然後根據遊標的方式,擷取需要的記錄。如果資料量大,開銷大和記憶體溢位。 使用方式: 利用自動生成的example類,加入mybatis的RowBounds類,在呼叫的介面中新增給類的引數 @

Bootstrap table示例

伺服器端分頁 注意伺服器端資料的返回的格式 [json]必須包含:total節點(總記錄數),rows節點(分頁後資料) 即:{“total”:24,”rows”:[…]} $('#test-table').bootstrapTab

Asp.Net中的三方式總結

rom chang clas 綁定 select proc dll xtend tinc 本人ASP.net初學,網上找了一些分頁的資料,看到這篇文章,沒看到作者在名字,我轉了你的文章,只為我可以用的時候方便查看,2010的文章了,不知道這技術是否過期。 以下才是正文

sqlserver的四方式

pro 支持 分享 class eat cnblogs ext 5 學習 log 第一種:ROW_NUMBER() OVER()方式 select * from (     select *, ROW_NUMBER() OVER(Order by ArtistId )

布式鎖實現方案(一)

如果 pla 並發訪問 可用性 工廠類 mut con comm comment 一。為何使用分布式鎖?當應用服務器數量超過1臺,對相同數據的訪問可能造成訪問沖突(特別是寫沖突)。單純使用關系數據庫比如MYSQL的應用可以借助於事務來實現鎖,也可以使用版本號等實現樂觀鎖,最

sqlalchemy和flask-sqlalchemy的幾方法

elf offset 分頁查詢 order == ems div statement ron sqlalchemy中使用query查詢,而flask-sqlalchemy中使用basequery查詢,他們是子類與父類的關系 假設 page_index=1,page_siz

遞歸算法+sql三

public ati names collect div response ber urn void using Maticsoft.Common; using System; using System.Collections.Generic; using System.

Linux遺忘root密碼的其中解決方法

.com sha 一個 需要 shadow ada 操作系統 分享 http 由於安全的需要,系統一般只有一個root用戶,因此若遺忘root用戶的登錄密碼,因此需要通過其他途徑進行修改密碼。1.通過單用戶模式(1)重啟系統,按任意鍵進入grub菜單。出現grub菜單時,按

Mysql的三方法

1、limit m,n分頁語句:select * from dept order by deptno desc limit 3,3;select * from dept order by deptno desc limit m,n;limit 3,3的意思掃描滿足條件的3+3

演算法。翻必備

1.“俄羅斯儲存過程”的改良版CREATEprocedure pagination1(@pagesize int,  --頁面大小,如每頁儲存20條記錄@pageindex int--當前頁碼)asset nocount onbegindeclare @indextable 

android開發之&使用ViewPager加gridView實現選單按鈕滑動(類似QQ表情選擇翻效果)

剛做的專案中要用到選單分頁,以前沒做過,仔細想了想,既然是分頁,肯定就少不了ViewPager,大家都知道gridView可以實現九宮格,剛好滿足我們的需求,我做的是gridview單行顯示,大家如果需要向QQ表情一樣多行顯示,直接修改資料來源就可以。 好了,上程式碼 pu

sql 幾方法

action層,傳入page引數 public String findApplication(){ Page page = new Page(); page.setStart(this.ge

資料查詢 常見的4方法

常見的4種分頁方法:1)控制元件分頁,主要工作在前臺【軟翻頁】後臺一次性返回所有資料都交給前臺的VO,前臺利用類似DataGrid這樣的控制元件,一次性顯示一部分,實現分頁功能2)服務層分頁,主要工作在後臺【軟翻頁】前臺的查詢請求,原樣提交給持久層,持久層返回所有結果,服務層

js正則驗證數字,字母和下劃線(至少包含其中,數字不能開頭)

最近做了一個註冊驗證使用者名稱,要求數字,字母和下劃線(至少包含其中兩種,數字不能開頭),在網上找了好多例子,要麼只能實現字母和下劃線(數字不能開頭),要麼就只能實現數字,字母和特殊字元(至少包含其中兩種,數字不能開頭),無法排除其他的特殊字元,在嘗試了很多次以後,我試著將這兩種情況的判

Gridview ,repeater,datalist 通用

{        private System.Web.UI.WebControls.GridView gridview =null;        private System.Web.UI.WebControls.DataList datalist =null;        private System

GridView加序號列(時重新排序)

原文地址:http://5ie5.blog.163.com/blog/static/6118899420087314181121/ 方法1: 加模板列,如下程式碼: <asp:TemplateField HeaderText="序號">