【问题标题】:How to get the selected row index from an asp.net gridview row如何从 asp.net gridview 行中获取选定的行索引
【发布时间】:2023-04-07 23:19:02
【问题描述】:

我有一个没有数据键的网格视图。当我单击行编辑按钮时,我被带到了行编辑方法。我尝试了几种方法来获取行索引,但没有运气。

   protected void gvwCustomerLocation_RowEditing(object sender, GridViewEditEventArgs e)
   {
        var index1 = e.NewEditIndex;  //gives me an incorrect index number

        //The SelectedIndex always equals -1
        for (int i = 0; i < gvwCustomerLocation.Rows.Count; i++)
        {
            if (gvwCustomerLocation.SelectedIndex == 1)
            {

            }
        }

        int index = gvwCustomerLocation.EditIndex;  //The EditIndex = -1

        GridViewRow row = gvwCustomerLocation.SelectedRow;  //The SelectedRow = null
        var test = row.RowIndex.ToString();
   }

如何获取选中的行索引?

【问题讨论】:

  • 您应该可以使用e.NewEditIndexgvwCustomerLocation.Rows[e.NewEditIndex] 来获取选定的行。
  • @DaveAnderson 不幸的是,它没有。当我单击 gridview 中的第一行时,index1 的值是 2 而不是 0。
  • 你的GridView数据绑定是什么,当你使用gvwCustomerLocation.Rows[e.NewEditIndex]时,行中有什么数据?
  • @DaveAnderson 它绑定到一个 DataSet 表。
  • 你的数据集有多少行?如果e.NewEditIndex = 2是你数据集中的哪一行?您是如何连接事件处理程序的?

标签: c# asp.net webforms


【解决方案1】:

我最终放弃了从我的 gridview 获取行索引,并决定在我的 sql server 结果集中创建一个主键用作我在前端的键。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-03
    • 1970-01-01
    相关资源
    最近更新 更多