GridView中LinkButton的行索引

本文关键字:索引 LinkButton GridView | 更新日期: 2023-09-27 18:19:09

我在GridView中使用链接按钮作为模板字段。

现在我想显示点击的链接按钮的行索引。

请给我一个建议。谢谢。

GridView中LinkButton的行索引

假设在Item模板中这是我们的链接按钮

  <ItemTemplate>
               <asp:LinkButton ID="lnkapprove" Font-Underline="true" runat="server" Text="Approve"             OnClick="lnkapprove_Click"></asp:LinkButton>
  </ItemTemplate>
代码后面:

   protected void lnkapprove_Click(object sender, EventArgs e)
    {
        LinkButton btn = (LinkButton)sender;
        GridViewRow row = (GridViewRow)btn.NamingContainer;
        int i = Convert.ToInt32(row.RowIndex);
    }

可以得到row。RowIndex像这样…

请试试这个:

protected void userGridview_RowCommand(object sender, GridViewCommandEventArgs e)
    {
         GridViewRow rowSelect = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer);
            int rowindex = rowSelect.RowIndex;                
    }   

您也可以在行绑定事件

中尝试此代码
GridViewRow rowSelect = (GridViewRow)(((Button)e.CommandSource).NamingContainer);
                int rowindex = rowSelect.RowIndex;
这样的

protected void userGridview_RowBound(object sender, GridViewCommandEventArgs e)
    {
         GridViewRow rowSelect = (GridViewRow)(((Button)e.CommandSource).NamingContainer);
            int rowindex = rowSelect.RowIndex;                
    }

使用容器。页面的gridview模板中的DisplayIndex。在RowCommand处理程序后面的代码中,您将使用行索引作为参数。

 <asp:TemplateField HeaderText="Actions">
   <ItemTemplate>
     <asp:LinkButton ID="lbExample" runat="server" CommandName="DoAction" CommandArgument='<%# Container.DisplayIndex %>' ToolTip="Action link" CssClass="btn btn-sm btn-light"><i class="fa fa-edit"></i></asp:LinkButton>
   </ItemTemplate>
</asp:TemplateField>