如何在网格视图的第二页上获取行的行索引

时间:2013-06-29 10:46:36

标签: c# .net gridview checkbox

我有一个网格视图,可以存储有分页的城市,每页有10个城市。

如何在asp.net的第二页上获取任何行的行索引?网格视图的名称为 gdvCities

我尝试了以下内容:

CheckBox chkcity = (CheckBox)sender;
GridViewRow gdvrow = (GridViewRow)chkcity.NamingContainer;
int rowindex = gdvrow.RowIndex;

4 个答案:

答案 0 :(得分:0)

int rowindex = (gdvrow.RowIndex * gdvCities.PageIndex+1)

gdvrow.PageIndex将为您提供页面索引,默认情况下在第一页上,页面索引为0.因此添加1以获取准确值

答案 1 :(得分:0)

请尝试使用以下代码段。

int rowindex = (gdvrow.RowIndex == 0 ? (gdvCities.PageIndex + 1) : (gdvrow.RowIndex * gdvCities.PageIndex + 1));

答案 2 :(得分:0)

对于帖子迟到感到抱歉,但如果有人想知道,这是我的解决方案:

CheckBox chkcity = (CheckBox)sender;
GridViewRow gdvrow = (GridViewRow)chkcity.NamingContainer;
int rowindex = gdvrow.RowIndex;

var pagesize = this.GridView1.PageSize;
var pageindex = this.GridView1.PageIndex;
//basically, you want to take the pagesize multiplied by the page index, then subtract that from the rowIndex
paginatedRowIndex = rowindex - (pagesize * pageindex);

paginatedRowIndex变量将是您在使用分页gridview时要使用的行索引。

-Sahan

答案 3 :(得分:0)

(GridView1.PageSize * GridView1.PageIndex)+ e.row.rowIndex