我有一个网格视图,可以存储有分页的城市,每页有10个城市。
如何在asp.net的第二页上获取任何行的行索引?网格视图的名称为 gdvCities 。
我尝试了以下内容:
CheckBox chkcity = (CheckBox)sender;
GridViewRow gdvrow = (GridViewRow)chkcity.NamingContainer;
int rowindex = gdvrow.RowIndex;
答案 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