我想在运行时向我的页面添加一些提交输入,并在事件处理程序中使用单击输入的Id。
这是我的aspx代码:
<asp:Content runat="server" ID="CNT1" ContentPlaceHolderID="CPH1">
<div id ="CNT" runat="server">
</div>
</asp:Content>
<script language="c#" runat="server">
private void btnClick(object sender, EventArgs e)
{
string id = ((HtmlInputSubmit) sender).ID;
// some other code using id
}
</script>
这是我的aspx.cs代码
foreach (DataRow dr in dt.Rows)
{
CNT.Controls.Add(new LiteralControl(
"<input type=\"submit\" runat=\"server\" id="+dr.ItemArray[0].ToString()+
" value=\"val1\" OnServerClick=\"btnClick\"/>"));
}
我可以使用此代码在aspx页面上创建输入而不会出现任何问题。
答案 0 :(得分:0)
将访问修饰符从private更改为protected:
protected void btnClick(object sender, EventArgs e)
{
string id = ((HtmlInputSubmit) sender).ID;
// some other code using id
}
因为无法访问私人会员功能。