首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过单击ASP.NET网格视图中行中的按钮来获取行数据

如何通过单击ASP.NET网格视图中行中的按钮来获取行数据
EN

Stack Overflow用户
提问于 2013-01-10 17:47:45
回答 5查看 195.3K关注 0票数 25

我在ASP.NET web应用程序中有一个GridView,我在其中的每一行添加了两个按钮:

代码语言:javascript
复制
 <ItemTemplate>
    <asp:Button ID="btnEdit" Text="Edit" runat="server" />
    <asp:Button ID="btnDelete" Text="Delete" runat="server"/>
 </ItemTemplate>

现在,我如何通过单击行中的编辑按钮从gridview中获取行数据呢?

EN

回答 5

Stack Overflow用户

发布于 2013-01-10 17:54:50

在.aspx页面中放置commandName

代码语言:javascript
复制
 <asp:Button  ID="btnDelete" Text="Delete" runat="server" CssClass="CoolButtons" CommandName="DeleteData"/>

为网格订阅rowCommand事件,您可以像这样尝试,

代码语言:javascript
复制
protected void grdBillingdata_RowCommand(object sender, GridViewCommandEventArgs e)
{
        if (e.CommandName == "DeleteData")
        {
            GridViewRow row = (GridViewRow)(((Button)e.CommandSource).NamingContainer);
            HiddenField hdnDataId = (HiddenField)row.FindControl("hdnDataId");
         }
}
票数 3
EN

Stack Overflow用户

发布于 2016-10-07 19:38:54

代码语言:javascript
复制
<ItemTemplate>
     <asp:Button ID="Button1" runat="server" Text="Button" 
            OnClick="MyButtonClick" />
</ItemTemplate>

和你的方法

代码语言:javascript
复制
 protected void MyButtonClick(object sender, System.EventArgs e)
{
     //Get the button that raised the event
Button btn = (Button)sender;

    //Get the row that contains this button
GridViewRow gvr = (GridViewRow)btn.NamingContainer;
}
票数 2
EN

Stack Overflow用户

发布于 2019-12-12 14:59:48

代码语言:javascript
复制
<asp:TemplateField>
   <ItemTemplate>
  <asp:LinkButton runat="server" ID="LnKB" Text='edit' OnClick="LnKB_Click"   > 
 </asp:LinkButton>
 </ItemTemplate>
</asp:TemplateField>

  protected void LnKB_Click(object sender, System.EventArgs e)
  {
        LinkButton lb = sender as LinkButton;

        GridViewRow clickedRow = ((LinkButton)sender).NamingContainer as GridViewRow;
        int x = clickedRow.RowIndex;
        int id = Convert.ToInt32(yourgridviewname.Rows[x].Cells[0].Text);
        lbl.Text = yourgridviewname.Rows[x].Cells[2].Text; 
   }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14254880

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档