当前位置:编程学习 > C#/ASP.NET >>

如何获取有分页的gridview里的每行的值

现在有一个gridview ,分页功能。
gridview.rows.count 只能获取某一页的总行数
现在想遍历gridview,获取gridview的总行数,和每一行的数据,怎么办呢?
string a = "";
for(int i = 1 ; i<= gridview.pagecount ;  i++)
{
gridview.pageindex = i ; 
for(int j = 0 ; j < gridview.rows.count ; j++)
{
   a  =  a + gridview.rows[j].cells[0].text.tostring();
   …………(获取每一行的值)
}
}

这样做也不能成功,都只能获取到第一页的数据,获取了pagecount次。
要实现遍历分页的gridview功能,该怎么做呢?
PS:不能直接遍历gridview的source,因为gridview能将某行置为visable = false ,这样的行是不遍历的 ,所以gridview的行数是小于等于source的行数的~~ GridView 分页 遍历 --------------------编程问答--------------------
var list=gv.DataSource as List<YourClass>;


这样取到行数不行? --------------------编程问答--------------------
引用 1 楼 q107770540 的回复:
var list=gv.DataSource as List<YourClass>;


这样取到行数不行?

+1 --------------------编程问答--------------------
引用 1 楼 q107770540 的回复:
var list=gv.DataSource as List<YourClass>;


这样取到行数不行?


不行啊,我不能直接取datasource的值,gridview的行数是小于等于datasource的 --------------------编程问答-------------------- ...
那你怎么绑定数据源的
总归有一个dataset或者datatable吧
用dataset或者datatable来取数据啊 --------------------编程问答--------------------
引用 4 楼 dota_sky_god 的回复:
...
那你怎么绑定数据源的
总归有一个dataset或者datatable吧
用dataset或者datatable来取数据啊

+1,应该用datatable获取数据吧,通过datatable来获取总数就好啦~ --------------------编程问答--------------------
引用 4 楼 dota_sky_god 的回复:
...
那你怎么绑定数据源的
总归有一个dataset或者datatable吧
用dataset或者datatable来取数据啊

数据源是datatable呀,这个datatable的值是从excel文件里读出的

gridview里有个按钮,将那行置为不显示:
import_gridview.Rows[e.NewSelectedIndex].Visible = false;

我现在要遍历gridview,是不要visible = false 的行的,但是datasource里是包含这个行的
所以不能用datasource --------------------编程问答--------------------
引用 6 楼 ajo413 的回复:
Quote: 引用 4 楼 dota_sky_god 的回复:

...
那你怎么绑定数据源的
总归有一个dataset或者datatable吧
用dataset或者datatable来取数据啊

数据源是datatable呀,这个datatable的值是从excel文件里读出的

gridview里有个按钮,将那行置为不显示:
import_gridview.Rows[e.NewSelectedIndex].Visible = false;

我现在要遍历gridview,是不要visible = false 的行的,但是datasource里是包含这个行的
所以不能用datasource


话说我感觉你这么做的有点问题的- -你这样把VISIBLE给设置不显示了的话第二页,第三页,第四页的这一行都不显示了的。。。这是不是有点不符合实际了,你应该是在数据库里再加个字段,然后字段值为多少这一行不显示什么的,就在SQL语句里做筛选。。。 --------------------编程问答--------------------
引用 7 楼 dota_sky_god 的回复:
Quote: 引用 6 楼 ajo413 的回复:

Quote: 引用 4 楼 dota_sky_god 的回复:

...
那你怎么绑定数据源的
总归有一个dataset或者datatable吧
用dataset或者datatable来取数据啊

数据源是datatable呀,这个datatable的值是从excel文件里读出的

gridview里有个按钮,将那行置为不显示:
import_gridview.Rows[e.NewSelectedIndex].Visible = false;

我现在要遍历gridview,是不要visible = false 的行的,但是datasource里是包含这个行的
所以不能用datasource


话说我感觉你这么做的有点问题的- -你这样把VISIBLE给设置不显示了的话第二页,第三页,第四页的这一行都不显示了的。。。这是不是有点不符合实际了,你应该是在数据库里再加个字段,然后字段值为多少这一行不显示什么的,就在SQL语句里做筛选。。。


我的这个gridview是用来做数据导入的。。是从excel里读取信息,读取的信息不一定全都要导入到数据库中,置为visible = false 的就不用导入数据库。。
所以现在根本就没从数据库中做查询,没有什么字段是标识不显示的~~ --------------------编程问答-------------------- 设置不能分页 然后再重新绑定数据源,很简单 那些楼上 呵呵
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,