解決:
方法一:採用其emptytemplate來實現,模版中寫乙個靜態的table;
缺點: 麻煩,每個gridview都需要設定一下.
方法二: 若資料來源為datatable,則當無資料時,始終返回乙個空行的datatable;
若資料來源是集合類(arraylist,list等),無資料時,生成乙個空的實體,加入到集合類中.
缺點: 還是麻煩.
方法三:
也是要給大家介紹的方法: 擴充套件gridview來實現.繼承gridvie,重寫render方法,當其資料來源為空時做一下處理,直接看**吧:
///
/// gridview 擴充套件控制項
/// @author:[email protected]
///
public class gridview : system.web.ui.webcontrols.gridview
get
}private string _emptydatacellcssclass ;
///
/// 為空時資訊單元格樣式類
///
public string emptydatacellcssclass
get }//
/ //
/ 為空時輸出內容
/// //
/ protected virtual
void
renderemptycontent(htmltextwriter writer)
tablerow row2
=new
tablerow();
t.rows.add(row2);
tablecell msgcell
=new
tablecell();
msgcell.cssclass
=this
._emptydatacellcssclass;if(
this
.emptydatatemplate
!=null
) //the
second
row, use the template
else
//the second row, use the
emptydatatext
msgcell.horizontalalign
=horizontalalign.center;
msgcell.columnspan
=this
.columns.count;
row2.cells.add(msgcell);
t.rendercontrol(writer);
}protected override
void
render(htmltextwriter writer)
else
} }}
gridView分頁控制項
using system using system.collections.generic using system.linq using system.web using system.web.ui.webcontrols using system.drawing using system.tex...
GridView控制項筆記
1 無資料依然顯示表頭 引數 所要繫結的gridview 所要繫結的資料集 public void bindnorecords gridview gridview,dataset ds 2 boundfield的格式化字串 dataformatstring 還要加上htmlencode false ...
關於gridview控制項
1 e.row.rowtype datacontrolrowtype.datarow的意思 e.row.rowtype 是指當前行的型別 datacontrolrowtype 是gridview的行的型別集合 其中的datarow是資料繫結行 這個判斷語句的意思就是判斷當前行是不是資料繫結行 2這個...