我有一个名为gvappts的gridview。 该网格每周的每一天有七列一列。 网格也有多行,每个单元格内都有一个按钮。
如果我正在使用onRowCommand事件,有没有办法找到被点击的按钮的名称?
我从这开始:
if (e.CommandName == "GetData")
{
//Get rowindex
int rowindex = Convert.ToInt32(e.CommandArgument);
//Get Row
GridViewRow gvr = gvappts.Rows[rowindex];
}
不确定我是否会这样做。
以下是网页上gridview的代码段,所有列都使用了TemplateFields。
<Columns>
<asp:TemplateField HeaderText="Day 1" HeaderStyle-CssClass= "hdr" ItemStyle-CssClass="Grid">
<ItemTemplate>
<asp:LinkButton id="lbd1" runat="server" Text='<%#(Eval("Day1"))%>' CommandName="GetData" CommandArgument='<%# Container.DataItemIndex %>'/>
</ItemTemplate>
</asp:TemplateField>
</Columns>
答案 0 :(得分:3)
您可以使用CommandSource
并将其强制转换为LinkButton。
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
LinkButton lb = e.CommandSource as LinkButton;
string value = lb.CommandArgument;
}