GridView 繫結資料不滿一頁時填充空行的方法

2021-09-30 09:03:07 字數 1050 閱讀 2228

asp.net 2.0 提供了非常強大的繫結能力,而 asp.net 2.0 新增的 gridview 控制項更是充分體現和發揮了資料繫結強大的功能。gridview 的資料繫結和頁面顯示可以通過簡單的**實現,大大提高了開發效率。

不過有個地方讓人不爽,就是在使用分頁時,如果繫結的資料不滿一頁,那麼 gridview 僅顯示繫結的資料。例如,將 gridview 的 pagesize 設定為 10,每頁顯示 10 條資料,如果當前查詢僅返回了 6 條資料,那麼 gridview 就顯示這 6 條資料,如果當前查詢返回了多於 10 條資料,那麼 gridview 則顯示 10 條資料,這樣當執行不同的查詢時,gridview 時而顯示 10 條資料,時而顯示 1、2、3、……,9 條資料,gridview 的顯示區域隨著繫結的資料條數的變化而變化,給人很糟糕的互動體驗。



怎麼辦?如果能夠不管繫結的資料條數是多是少,都能始終顯示相同的行數就好了,也就是說,當 gridview 繫結的資料條數不滿一頁時,通過某種方法在 gridview 中新增空行,使 gridview 能夠始終顯示 pagesize 設定的行數。

那麼怎樣新增空白行呢?還是利用 gridview 的 databound 事件,在繫結結束後,通過判斷 gridview 的 rows 屬性將行數補充到和 pagesize 設定的大小一樣,具體**和效果如下:

public void gridview_databound(object sender, eventargs e)

table.controls.addat(rowindex, row);}}

}}

需要注意到是:

1. 新增的 gridviewrow 的 rowtype 需要設定成 seperator;

2. 設定空白行內地 tablecell 屬性時,應注意 gridview 對應列的 visible 屬性是否設定為 false,和 gridview 的 autogeneratecollomn 是否設定為 true,如果是,那麼應該對應的做一些處理。

最後的填充了空白行的 gridview 效果如圖:

gridview 繫結資料來源

本人剛剛學習asp.net c 整理一下關於 gridview的使用 if page.ispostback this.panel1.visible true this.gridview1.emptydatatext 暫沒有資料 this.gridview1.emptydatarowstyle.hor...

動態新增gridView 並繫結資料

using system using system.data using system.configuration using system.collections using system.web using system.web.security using system.web.ui usin...

GridView手動繫結資料來源

在正規的開發中,不允許使用sqldatasource objectdatasource accessdatasource等資料來源控制項快速的開發web應用,因為這樣會增加伺服器的壓力,不滿足開發的基本要求。所以需要手動繫結資料來源,下面做了演示。如何給gridview控制項手動繫結資料來源。為了方...