我正在使用C#开发一个asp.net应用程序。我创建了一个.aspx页面,并在页面上的不同位置放置了四个按钮。在服务器端,我只想对所有四个按钮使用一个单击事件。
下面是我的代码:
aspx页面
<asp:Button ID="Button1" runat="server" CommandArgument="Button1" onClick = "allbuttons_Click" />
<asp:Button ID="Button2" runat="server" CommandArgument="Button2" onClick = "allbuttons_Click" />
<asp:Button ID="Button3" runat="server" CommandArgument="Button3" onClick = "allbuttons_Click" />
<asp:Button ID="Button4" runat="server" CommandArgument="Button4" onClick = "allbuttons_Click" />
cs页面
protected void allbuttons_Click(object sender, EventArgs e)
{
//Here i want to know which button is pressed
//e.CommandArgument gives an error
}
发布于 2011-04-15 20:24:26
@Tejs在他的评论中是正确的,看起来你想要这样的东西:
protected void allbuttons_Click(object sender, EventArgs e)
{
var argument = ((Button)sender).CommandArgument;
}
发布于 2011-04-15 20:29:22
使用
OnCommand =
和
protected void allbuttons_Click(object sender, CommandEventArgs e) { }
发布于 2011-04-16 05:06:11
实际上,您根本不需要传递CommandArgument就能知道您按下了哪个按钮。您可以获取按钮的ID,如下所示:
string id = ((Button)sender).ID;
https://stackoverflow.com/questions/5676618
复制相似问题