aspnet頁面中動態(tài)增加的控件、添加事件

aspnet頁面中動態(tài)增加的控件、添加事件

ID:9801693

大?。?0.50 KB

頁數(shù):13頁

時間:2018-05-10

aspnet頁面中動態(tài)增加的控件、添加事件_第1頁
aspnet頁面中動態(tài)增加的控件、添加事件_第2頁
aspnet頁面中動態(tài)增加的控件、添加事件_第3頁
aspnet頁面中動態(tài)增加的控件、添加事件_第4頁
aspnet頁面中動態(tài)增加的控件、添加事件_第5頁
資源描述:

《aspnet頁面中動態(tài)增加的控件、添加事件》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。

1、ASP.NET頁面中動態(tài)增加的控件、添加事件/--------------------------利用計數(shù)器實現(xiàn)動態(tài)button的累加---------------------------------/在ASP.NET中動態(tài)創(chuàng)建一個控件總是不那么順利,特別是當(dāng)對頁面的LifeCycle不是那么了然的情況下!這里簡單描述一下要求,然后提供一個解決方案,大家看看有沒有更好的Idea,如果有的話就是我的大幸了,呵呵!要求:頁面上有一個Add按鈕,每點(diǎn)擊一次該按鈕,頁面上動態(tài)創(chuàng)建一個WebPartZone!

2、提醒:WebPartZone只能在OnInit或之前才能創(chuàng)建,否則報異常!大家都知道,按鈕的點(diǎn)擊事件是在RaisePostbackEvent時觸發(fā)的,這意味著點(diǎn)擊事件在OnLoad階段之后才執(zhí)行,遠(yuǎn)遠(yuǎn)落后于OnInit階段,而且ViewState在OnLoad時才準(zhǔn)備好,OnInit以及之前的階段根本就不能使用ViewState!如果試圖在按鈕點(diǎn)擊事件里面創(chuàng)建WebPartZone等控件,唯一的后果就是頁面出錯;而如果在OnInit里面創(chuàng)建控件,由于ViewState沒有準(zhǔn)備好,那么有些數(shù)據(jù)比如當(dāng)前

3、需要創(chuàng)建的個數(shù)(存在ViewState里面)就無法獲得!目前對這個問題我還沒有找到什么好的解決方案,經(jīng)過實驗,勉強(qiáng)得出一個不怎么優(yōu)雅的方案,就是利用HiddenField保存數(shù)據(jù),然后直接使用Request.Form["XXX"]在OnInit階段取得數(shù)據(jù);而判斷是否點(diǎn)擊按鈕也是通過Request.Form是否存在對應(yīng)數(shù)據(jù)來判斷的!廢話不多說了,大家看看代碼吧!privatevoidPage_Load(objectsender,System.EventArgse){ButtonButton1=new

4、Button();Button1.CommandArgument="b1";Button1.Text="Btn1";Button1.Command+=newCommandEventHandler(this.OnButton);PlaceHolder1.Controls.Add(Button1);ButtonButton2=newButton();Button2.CommandArgument="b2";Button2.Text="Btn2";Button2.Command+=newCommandEv

5、entHandler(this.OnButton);PlaceHolder1.Controls.Add(Button2);Controlc3=ParseControl("");//將字符串轉(zhuǎn)換成web控件Controlc4=ParseControl("

6、ndname='Btn'commandargument='b4'runat='server'/>");PlaceHolder1.Controls.Add(c3);PlaceHolder1.Controls.Add(c4);ButtonmyBut=(Button)Page.FindControl("Button3");myBut.Command+=newCommandEventHandler(this.OnButton);ButtonmyBut2=(Button)Page.FindControl("B

7、utton4");myBut2.Command+=newCommandEventHandler(this.OnButton);}publicvoidOnButton(ObjectSender,CommandEventArgse){switch(e.CommandArgument.ToString().ToLower()){case"b1":Label1.Text="Button1";break;case"b2":Label1.Text="Button2";break;case"b3":Label1.

8、Text="Button3";break;case"b4":Label1.Text="Button4";break;};}privatevoidPage_Load(objectsender,System.EventArgse){ButtonButton1=newButton();Button1.CommandArgument="b1";Button1.Text="Btn1";Button1.Command+=newCommandEventHandler(this.On

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。