我有中继器按钮,我想在点击时更改背景颜色。 问题是我不知道如何识别单击哪个按钮,我无法通过onclick功能到达它。 只是为了说清楚 - 我想更改已单击的按钮。 它应该像一个“选中”按钮。
这些是按钮
<asp:Repeater ID="rptFillButtonCategory" runat="server">
<ItemTemplate>
<asp:Button ID="FillButton" runat="server" Width="100%" OnClick="ButtonSelectionFill"
CommandArgument='<%#DataBinder.Eval(Container.DataItem, "Id") %>'
Text='<%#DataBinder.Eval(Container.DataItem, "Name") + " for next version" %>'/>
</ItemTemplate>
</asp:Repeater>
这是点击功能
public void ButtonSelectionFill(object o, EventArgs e)
{
Button btn = ((Button)o);
btn.BackColor = System.Drawing.Color.Red;
DropCategory.SelectedValue = Convert.ToInt16(((Button)o).CommandArgument.ToString());
}
感谢您的帮助。
答案 0 :(得分:1)
这有效:
<asp:Repeater ID="Repeater1" runat="server" DataSourceID="ObjectDataSource1">
<ItemTemplate>
<asp:Button ID="Button1" runat="server"
Text='<%#DataBinder.Eval(Container.DataItem, "Id") %>' OnClick="Button1_Click" />
</ItemTemplate>
</asp:Repeater>
protected void Button1_Click(object sender, EventArgs e)
{
Button b = (Button)sender;
b.BackColor = System.Drawing.Color.Red;
}