Re: 求助PlaceHoder的用法?
※ 引述《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)
討論串 (同標題文章)
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章