需求背景:繫結列數量不穩定,可能會發生變化;或者需要允許使用者自己定義顯示列
解決方案:gridview 動態增加列,使用itemplate 介面實現itemtemplate
1.通過實現itemplate介面的instantiatein方法,定義自己希望的列展示內容。並且定義嵌入內容的databinding事件。
code
public
class
roomnametemplate : webcontrol, itemplate
set}
public
roomnametemplate()
public
roomnametemplate(
string
text)
#region
itemplate 成員
public
void
instantiatein(control container)
void
spantext_databinding(
object
sender, eventargs e)
}#endregion
}2.重寫頁面的createchildcontrols方法,按自己的需求建立gridview列,但是頁面的樣式需要自己通過**來控制。
code
protected
override
void
createchildcontrols()
}值得注意的是,通過**建立gridview列的controlstate並不是我們能夠控制的,如果混合使用html方式和**動態建立,容易出現postback以後無法重新render itemtemplate中的內容。最好能夠統一用**建立,每次建立前先將所有列清空。這樣不會影響繫結。
gridview增加自動序號列
gridview增加自動序號列 2007年10月24日 星期三 02 07 第一種方式,直接在aspx頁面gridview模板列中.這種的缺點是到第二頁分頁時又重新開始了.asp templatefield headertext 序號 insertvisible false itemstyle ho...
gridview增加自動序號列
第一種方式,直接在aspx頁面gridview模板列中.這種的缺點是到第二頁分頁時又重新開始了.序號 insertvisible false center center width 5 container.dataitemindex 1 第二種方式分頁時進行了計算,這樣會累計向下加.序號 inser...
GridView增加自動序號列
第一種方式,直接在aspx頁面gridview模板列中.這種的缺點是到第二頁分頁時又重新開始了.序號 insertvisible false center center width 5 container.dataitemindex 1 第二種方式分頁時進行了計算,這樣會累計向下加.序號 inser...