使用C#将asp:按钮添加到面板时出现问题

本文关键字:问题 添加 asp 按钮 使用 | 更新日期: 2023-09-27 17:58:19

我通过在面板中添加新的HTML来列出我的购物篮中的内容,这样它就可以在aspx页面上列出了。我还试图在末尾添加一个asp:按钮,允许用户删除项目,但按钮没有显示!

代码;

string sHTML = @"<div class='item_bar'>
                   <div class='item_id'>" + id + @"</div>
                   <div class='item_title'>" + name + @"</div>
                   <div class='item_price'>" + cost + @"</div>
                   <asp:Button class='button' Text='Remove' runat='server' CommandArgument='"+name+@"' OnClick='removeItem' />
                 </div>";
basketDiv.Controls.Add(new LiteralControl(sHTML));

感谢

使用C#将asp:按钮添加到面板时出现问题

如果要添加ASP:BUTTON等控件,则需要不通过字符串添加它们,而是实际添加

        this.pnlFrame.Controls.Add(new Button() { 
      ID = "buttonId1",
       Text = "Text for new button"
    });

请记住,这需要在实际编译页面时进行注册,因此它在您的情况下不起作用。

检查这个链接也添加按钮到面板动态并得到它';s父ID

如果您不希望在运行时捕获事件,并且希望通过jquery执行操作,您可以像现在这样使用字符串添加它,并添加一个类型为submit 的普通HTML输入

 <input type='submit' value='New button'/>

但是,当单击时,您需要在客户端创建脚本来捕获这些事件。

创建按钮,然后设置您想要的属性,然后添加到面板中

     // add the litenal control - DIVs
     basketDiv.Controls.Add(new LiteralControl("<div class='item_bar'><div class='item_id'>" + id + "</div><div class='item_title'>" + name + "</div><div class='item_price'>" + cost + "</div>"));
    // create button and Add it to basketDiv
    Button button = new Button();
    button.Name = "Button1";
    // you can added other attribute here.
    button.Text = "New Button";
    button.Location = new Point(70,70);
    button.Size = new Size(100, 100);        
    basketDiv.Controls.Add(button);

     // close the parent Liternal "DIV class='item_bar'"
    basketDiv.Controls.Add(new LiteralControl("</div>"));