Re: 求助PlaceHoder的用法?

看板C_Sharp (C#)作者時間20年前 (2004/11/04 19:16), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串10/11 (看更多)
※ 引述《kojilin (音樂讓我忘記妳..NNI》之銘言: : ※ 引述《tomex (tomex_ou)》之銘言: : : 我在乎的目標在於如「動態」產生100按鈕, : : 那麼我如何設定這些button event,又如何區分是按那一個鈕?! : : 的確是要先定義好Event...藉由參數來判知。 : 小弟的做法 : 自己設定每個button的id : Button b1 = new Button(); : b1.ID="b1"; : 反正你動態產生,那麼名字也給他動態產生 : 只要到時事件處理時也用同個button就可以了 試用一個暴力範例吧 void Page_Load(..){ if(Session["b1"] != null) { //按下按鈕以後才找的到按鈕,不然會發生按鈕不存在而找不到事件 PlaceHolder1.Controls.Add((Button)Session["b1"]); ((Button)Session["b1"]).click += new EventHandler(...); } } //按下AddButton後在PlaceHolder裡新增一個按鈕 void AddButton_Click(...){ Button b1 = new Button(); b1.Text = "name"; //給每個按鈕自己的名字,不然下次新增另一個按鈕會同名出錯 b1.ID = "b1"; Session.Add("b1", b1); //為了立即顯示效果 PlaceHolder1.Controls.Add(b1); } 你是要類似這樣?上面這樣還瞞暴力的 畢竟Session塞這種東西塞多了... 可以直接用ID判斷, 但是得注意還要多處理一下,不然會把PlaceHolder內的Controls 中的同名Button當作不同東西~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.138.150.48 ※ 編輯: kojilin 來自: 140.138.150.48 (11/04 19:49)
文章代碼(AID): #11YWzp4o (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #11YWzp4o (C_Sharp)