我想在按鈕單擊事件(例如,btnCreateDynamic_Click)上創建動態按鈕。 我試着在page_load事件和Pre_int事件上創建動態按鈕。他們都在工作,但我想在按鈕單擊事件中創建它們。我如何在c#asp.net中做到這一點?如何在按鈕單擊事件(C sharp ASP.NET)上創建動態按鈕?
1
A
回答
1
一個想法是創建一個按鈕列表,您可以在其中存儲您在btnCreateDynamic_click中創建的按鈕。
你可以像一個方法:
private Button CreateButton(string id, string name)
{
Button b = new Button();
b.Text = name;
b.ID = id;
b.Click += new EventHandler(Button_Click);
b.OnClientClick = "ButtonClick('" + b.ClientID + "')";
return b;
}
在btnCreateDynamic_click你可以有這樣的:
Button b = CreateButton("dinamicBtn"+myDinamicButtonsList.Count.ToString(),"dinamicBtn"+myDinamicButtonsList.Count.ToString());
myDinamicButtonsList.add(b);
,並在頁面加載,例如,你可以不喜歡
foreach(button btn in myDinamicButtonsList){
form1.Controls.Add(btn));
}
List<Button> myDinamicButtonsList = new List<Button>();
myDinamicButtonsList應該存儲在某個地方,以便可以在之後檢索它的位置每個請求。
編輯: 在頁面加載,你可以有這樣的事情:
if(Session["myDinamicButtons"] == null){
List<Button> myDinamicButtonsList = new List<Button>();
Session["myDinamicButtons"] = myDinamicButtonsList;
}
foreach(Button btn in Session["myDinamicButtons"] as List<Button>){
form1.Controls.Add(btn));
}
我沒有測試,但它應該工作。
2
您在客戶端的按鈕單擊事件將導致頁面回發,該頁面回發將啓動ASP.Net頁面生命週期;在服務器上
你按一下按鈕事件是PostBackEvent,你應該能夠使用相同的方法調用CreateMyButton()
您在加載或初始化事件中使用。
相關問題
- 1. 創建按鈕單擊事件C#
- 2. 如何在TableRow中動態創建按鈕單擊事件?
- 3. 按鈕單擊創建動態控件
- 4. 單擊事件爲HTML動態按鈕
- 5. asp.net - 動態創建單選按鈕
- 6. VB.NET右鍵單擊事件動態創建按鈕
- 7. 動態創建的按鈕不觸發單擊事件
- 8. 添加事件動態創建按鈕
- 9. 如何在按鈕單擊後動態創建JavaScript菜單
- 10. 我如何創建按鈕點擊動態表在ASP.Net
- 11. C#中如何處理多動態創建的按鈕事件
- 12. ASP.net C#按鈕單擊
- 13. 動態創建按鈕textview按鈕
- 14. 如何爲Asp.net控件的鏈接按鈕創建雙擊&單擊事件?
- 15. 在asp.net C#創建動態複選框,單選按鈕
- 16. ASP.NET添加html按鈕單擊事件
- 17. 我創建的asp.net調用按鈕單擊事件
- 18. 如何在asp.net中單擊另一個按鈕時創建按鈕?
- 19. UIWebView按鈕單擊事件
- 20. WPF按鈕單擊事件
- 21. 單擊事件按鈕
- 22. jquery按鈕單擊事件
- 23. 點擊功能動態創建按鈕
- 24. 點擊按鈕動態創建TableViews
- 25. 點擊動態創建按鈕
- 26. 按鈕單擊Asp.Net
- 27. 動態創建的按鈕點擊事件未觸發
- 28. 爲vb.net中的動態按鈕創建多個點擊事件
- 29. Android:動態創建圖像按鈕與點擊事件
- 30. 如何編寫函數單擊()爲動態創建的按鈕?
(因爲我不熟悉列表)我可以將按鈕存儲在arraylist而不是List?我試過,但我得到錯誤。你能幫忙嗎? – Prem 2010-10-27 13:15:07
你可以創建這個列表:列表
非常感謝你... !!!有用 – Prem 2010-10-28 04:17:51