我需要創建很多GridView
s以顯示在aspx頁面上。在代碼後面排序GridView。 Gridview動態生成。 OnSorting方法不被稱爲
然後,我創建了一個方法來生成這些GridView
s,它基於一組名稱和DataTable
s。
無論如何,每個GridView
生成如下:
GenerateGridView(string gvName, DataTable dtGridView){
GridView Gview = new GridView();
Gview.ID = gvName;
Gview.AutoGenerateColumns = true;
Gview.CssClass = "table table-responsive table-condensed table-striped table-bordered";
Gview.CellPadding = 4;
Gview.GridLines = 0;
Gview.AllowPaging = false;
Gview.Attributes.Add("Font-Size", "Smaller");
Gview.Attributes.Add("HeaderStyle-Font-Size", "Small");
Gview.AllowSorting = true;
}
問題:我需要的OnSorting
方法。但我沒有全部GridView
的名稱,它們將被動態生成(Gvied.ID或gridview ID是根據SELECT命令中的表名動態生成的)。
所以我不能創建一個protected void gridViewName_OnSorting
方法。
Gridview
生成順利。但每次我點擊一個標題的時候,我得到一個
System.Web.HttpException
排序例外。
我創建了一個通用排序:
protected void gvSorting(object sender, GridViewSortEventArgs e)
然後我GenerateGridview(..)
添加的屬性對所有GridView
S:
Gview.Attributes.Add("OnSorting", "gvSorting");
不過,我不斷收到的Http排序異常。我調試的代碼,並且,除了
OnSorting = gvSorting
出現在所生成的GridView
S,該錯誤仍然存在。
完美打造的排序方法!!!!感謝很多@VDWWD !!! –
感謝這工作正常 – GGSoft