我有一个 ASP.WebSite,其中我在aspx上动态添加了一些表单控件.cs使用
form1.Controls.Add( " Object of Control ");
此外,已经在aspx文件中的表单上添加了一个按钮,使用
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Add" UseSubmitBehavior="false" />
现在当我运行程序时,它将 Button1 转换为 HTML 提交按钮,如下所示
<input type="button" name="Button1" value="Add" onclick="javascript:__doPostBack('Button1','')" id="Button1" />
并且表单标记变为
<form name="form1" method="post" action="Add1.aspx" id="form1" enctype="multipart/form-data">
当我单击 Button1 时,它会提交表单,而不是在代码隐藏上调用函数。
如何调用在 Button1 的 OnClick 事件上指定的方法Button1_Click?
请帮忙。
您是否在代码隐藏中实现了单击事件处理程序?
protected void Button1_Click(Object sender, EventArgs e)
{
Button btn = (Button)sender;
}
按钮。单击事件
我不知道这个问题与您的动态控制问题有何关系,因为Button1
是以声明方式添加的。
我应该动态添加按钮控件,如下所示:
b1.ID = "EDIT";
b1.Text = "Add";
b1.Click +=new System.EventHandler(this.Button1_Click);
b1.Style["Position"] = "Absolute";
b1.Style["Top"] = "10px";
b1.Style["Left"] = "20px";
form1.Controls.Add(b1);
它现在正在调用函数Button1_Click 在 Button1 的单击事件上。在这种情况下,我必须手动创建功能Button1_Click即不仅仅是双击设计页面。
添加的控件,则必须在页面加载时添加它。
然后它会正常工作。