如何创建按钮单击事件(升C ASP.NET)动态按钮? [英] How can i create dynamic buttons on button click event (C sharp ASP.NET)?
问题描述
我要创建按钮单击事件动态按钮(例如,btnCreateDynamic_Click)。 我试图创建的Page_Load事件和pre_int event.They动态按钮都在工作,但我想在按钮单击事件创建。我怎样才能做到这一点在C#asp.net?
I want to create dynamic buttons on button click event(for example., btnCreateDynamic_Click). I tried creating dynamic buttons on page_load event and Pre_int event.They are all working but i want to create them in button click event. How can i do this in c# asp.net?
推荐答案
这是想法是创建一个按钮列表中,你会保存您在btnCreateDynamic_click创建的按钮。
An idea would be to create a list of buttons in which you'd store the buttons you created in 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你可以有这样的:
in btnCreateDynamic_click you could have something like:
Button b = CreateButton("dinamicBtn"+myDinamicButtonsList.Count.ToString(),"dinamicBtn"+myDinamicButtonsList.Count.ToString());
myDinamicButtonsList.add(b);
,并在页面加载,例如,你可以不喜欢
and in the pageLoad for example you could do something like
foreach(button btn in myDinamicButtonsList){
form1.Controls.Add(btn));
}
List<Button> myDinamicButtonsList = new List<Button>();
myDinamicButtonsList应某处,从那里可以每个请求后检索存储
myDinamicButtonsList should be stored somewhere from where it could be retrieved after each request.
修改: 在页面加载,你可以有这样的事情:
EDIT: In page load you could have something like this:
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));
}
我没有测试它,但它应该工作。
i didn't tested it but it should work.
这篇关于如何创建按钮单击事件(升C ASP.NET)动态按钮?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!