【发布时间】:2017-05-09 13:24:03
【问题描述】:
我有一个名为 gvappts 的网格视图。 这个网格有七列,一列是一周中的每一天。 网格也有多行,每个单元格里面都有一个按钮。
如果我使用 onRowCommand 事件,有没有办法找到被点击的按钮的名称?
我从这个开始:
if (e.CommandName == "GetData")
{
//Get rowindex
int rowindex = Convert.ToInt32(e.CommandArgument);
//Get Row
GridViewRow gvr = gvappts.Rows[rowindex];
}
不确定我是否正确。
这是网页上gridview的sn-p,所有列都使用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>
【问题讨论】:
-
你能贴出gridview的标记吗?
-
您可以将 onclick 事件添加到按钮本身,而不是使用命令。然后在您的 onclick 中,只需将您的发件人转换为按钮即可获取其详细信息。
-
使用 FindControl 之类的东西。LinkButton lbtn = (LinkButton)GridView1.FindControl("btnLink");或 检查发件人。 LinkButton lb = (LinkButton)sender;
-
@jmag,不,你不能。在
RowCommand中,发送者是 GridView,而不是 LinkButton。
标签: c# asp.net button gridview