繁体   English   中英

如何在按钮单击时在asp.net中添加具有不同ID并具有不同Click事件的动态控件?

[英]How to add dynamic controls with different ID and having a different Click event in asp.net on a button click?

   protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            ViewState["i"] = 1;
        }
    }
   protected void Button1_Click(object sender, EventArgs e)
         {
            int i = (int)ViewState["i"];
            Button MyButton = new Button();
            MyButton.ID = "MyButton" + i;
            divContainer.Controls.Add(MyButton);

            i++;
            ViewState["i"] = i;
         }

每当我单击按钮以在id为“ descriptionBox”的div中添加新控件时,最后创建的控件就会从该div中删除,而是改为创建新控件。我想在每次单击时创建一个新控件并将其添加到该分区

当您使用Asp控件时,每次添加控件时它将在服务器端呈现,它刷新页面并且以前的内容消失了,您可以使用Page_PreInit事件

 protected void Page_PreInit(object sender, EventArgs e)
 {
           Request.Form.AllKeys.Where(key => key.Contains("button name")).ToList();
 }

保留或重新创建现有控件以获取更多信息的事件,请查看链接https://www.aspsnippets.com/Articles/ASPNet-Dynamic-Controls-ViewState-Retain-state-for-dynamically-created-controls -PostBack.aspx

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM