2012-11-25 82 views
0

我有一個表格數據,其中每行的最後一列添加了一個動態鏈接按鈕。Asp.net動態鏈接按鈕不會引發事件

LinkButton link = new LinkButton(); 
link.Text = "Edit"; 
link.ID = dt.Rows[dt.Rows.IndexOf(dtRow)][0].ToString() + "|" + dt.Rows[dt.Rows.IndexOf(dtRow)][1].ToString(); 
link.ClientIDMode = System.Web.UI.ClientIDMode.AutoID; 
cell.Controls.Add(link); 
link.Click += new EventHandler(EditClicked); 

編輯鏈接顯示,並點擊它後背部也不過事件EditClicked不會觸發的。

回答

0

你的問題是你動態創建你的LinkBut​​ton而不是當你的頁面被加載時再次重新創建

如果您動態創建控件,然後在回發時不再創建它(在Page_Load或最好在Page_Init),則不會觸發該事件。

解決此問題的一種方法是使用隱藏字段:
當您動態創建鏈接按鈕時,請將特殊值設置爲隱藏字段。 然後,在Page_Load(在if (IsPostback)中)檢查隱藏字段,如果它有特殊值 - 再次重新創建所有這些控件。

+0

哦!我在page_Prerender上加載了。感謝您的幫助 – Ruchan

+0

很高興幫助:) – Blachshma

相關問題