Asp.net gridview筛选后的选定行

Asp.net gridview筛选后的选定行,asp.net,gridview,Asp.net,Gridview,我已将gridview绑定到一些sqldatasource 在第一列中,我有编辑按钮,在GridView\u SelectedIndexChanged事件中,我根据行构建了一些查询字符串 我得到的这一行是这样的:GridView行=GridView.SelectedRow; 它工作正常,但 我不时过滤gridView(通过更改sqldatasource中的selectcommand) 过滤工作正常,但GridViewRow row=GridView。SelectedRow获取一行,就像所有行都

我已将
gridview
绑定到一些
sqldatasource

在第一列中,我有编辑按钮,在
GridView\u SelectedIndexChanged
事件中,我根据行构建了一些查询字符串
我得到的这一行是这样的:
GridView行=GridView.SelectedRow


它工作正常,但
我不时过滤gridView(通过更改sqldatasource中的selectcommand)
过滤工作正常,但
GridViewRow row=GridView。SelectedRow
获取一行,就像所有行都可见一样。
示例:(当我单击第2行时)
不带过滤器:

1
2
3
4
行。单元格[1]。文本
-我得到2个OK
带过滤器:

1
4

row.Cells[1].Text
-我得到了2个我遇到了同样的问题,但我在加载页面中删除了一个将sql数据加载到gridview的函数,从而解决了这个问题。例如,我创建了一个将数据从sql server加载到gridview的函数。当我从网格中选择过滤行填充到文本框时,它会用来填充不正确的行。创建用于将所有行加载到网格的函数。过滤的行是正确的,当选择并填充一行到文本框时,它会被更改为自动回发(刷新)

您得到的结果是正确的,选定的行,在这两种情况下,第二行都是=2OK,但
行。单元格[1]。文本仍然给我“2”。事实上,您是对的,我编辑了我的问题。thanksHi pawlakppp,请在隐藏字段中绑定任何唯一ID,并在选择行后,获取该隐藏字段的值。谢谢。嗨@RonakPatel你可能是对的,但那是4年前的事了:)