DataGridView 分页后不能导出全部数据

问题描述

我用的工具:VS2008;SqlServer2005;C#我的问题是:DataGridView分页后导出Excel的时候只能导出本页的数据,有什么办法能导出所有页的数据。我的数据源是List。我想在保留分页的前提下能将所有数据导出急求,谢谢各位高手!!!

解决方案

解决方案二:
那你就从dataset中导出
解决方案三:
从list直接导。
解决方案四:
引用2楼sunwl_191的回复:

从list直接导。

~~~~~~~
解决方案五:
#1,#2都可以呀
解决方案六:
该回复于2011-11-25 08:59:21被版主删除
解决方案七:
导出功能:调用另外一个读取数据的函数,这个函数里读取全部的数据
解决方案八:
///<summary>///仅将GridView数据导出(不导出里面的控件之类的)///</summary>///<paramname="dt"></param>///<paramname="page"></param>///<paramname="FileName"></param>publicToExcel(DataTabledt,Pagepage,stringFileName){HttpResponseresp;resp=page.Response;resp.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");resp.AppendHeader("Content-Disposition","attachment;filename="+FileName);stringcolHeaders="",ls_item="";inti=0;//定义表对象与行对像,同时用DataSet对其值进行初始化DataRow[]myRow=dt.Select("");//取得数据表各列标题,各标题之间以t分割,最后一个列标题后加回车符for(i=0;i<dt.Columns.Count-1;i++)colHeaders+=dt.Columns[i].Caption.ToString()+"t";colHeaders+=dt.Columns[i].Caption.ToString()+"n";//向HTTP输出流中写入取得的数据信息resp.Write(colHeaders);//逐行处理数据foreach(DataRowrowinmyRow){//在当前行中,逐列获得数据,数据之间以t分割,结束时加回车符nfor(i=0;i<dt.Columns.Count-1;i++)ls_item+=row[i].ToString()+"t";ls_item+=row[i].ToString()+"n";//当前行数据写入HTTP输出流,并且置空ls_item以便下行数据resp.Write(ls_item);ls_item="";}//写缓冲区中的数据到HTTP头文件中resp.End();}}

解决方案九:

解决方案十:
list里边的数据有很多,DataGridView绑定的字段很少,如果用list绑定就会出现好多没有用的字段。而且列头还会显示成数据库字段的名字,非常不和谐
解决方案十一:
声明一个新的datagridview,把该和谐的都和谐掉,在绑定导出
解决方案十二:
重新整理一个数据集绑定要导出的数据,再导出
解决方案十三:
你可以导出你有用的字段,,你可以固定那几个的。

时间: 2024-09-19 09:52:59

DataGridView 分页后不能导出全部数据的相关文章

jqgrid分页后,自定义查询数据怎么得到所有页的某列值的合计

问题描述 各位大侠们,新手求教.我现在用jqgrid,把数据流打到前端之后.然后在前端界面中用自定义查询,查询数据,查询数据完之后我如何得到所有页的某列值的合计 解决方案 解决方案二:<%@PageLanguage="C#"AutoEventWireup="true"CodeBehind="In.aspx.cs"Inherits="test.WebForm1"%><!DOCTYPEhtmlPUBLIC&quo

vb.net,datagridview用分页类将数据分页后,怎么才能重新恢复为一页显示

问题描述 datagridview用网上写的那个分页类(ClsDataGridViewPage)将数据分页后,怎么才能重新恢复为一页显示,代码怎么写,我试着重新打开连接可是不管用了 解决方案

mysql-Mysql中limit分页后将数据倒叙排列

问题描述 Mysql中limit分页后将数据倒叙排列 在MySQL中如何将分页的数据倒叙排列?比如取第10~20条数据,然后将数据倒叙排列 解决方案 mysql limit 分页mysql 分页用的limitmysql limit 分页 解决方案二: 先order by再limit.order by接你要排序的字段 解决方案三: 先用order by将所有数据都倒排序好,再用limit 9,10 解决方案四: select * from persons limit 10; 意思是,起点为0,开始

c# winfrom datagridview 数据绑定后 倒序显示数据?

问题描述 c# winfrom datagridview 数据绑定后 倒序显示数据? c# winfrom datagridview 数据绑定后如何倒序? 解决方案 把绑定的数据源进行倒序. 也可以查一下MSDN.https://msdn.microsoft.com/zh-cn/library/95scxcdy(v=vs.110).aspx 总之好多好多办法,显示器倒过来?开个玩笑:) 解决方案二: datagridview中有按照列排序(升序或降序)的功能,每个列标题的都有一个倒三角号你没看到

C#中gridview控件数据导出EXCEL数据问题,求教

问题描述 gridview中数据显示正常导出excel后出现以下问题:账号异常,数据位置不对齐导出excel代码如下:GridView1.AllowPaging=false;//取消分页,使GridView显示全部数据.Response.Clear();Response.AppendHeader("Content-Disposition","attachment;filename=FileName.xls");//设置输出流为简体中文Response.Charset

Aspnetpager对GridView分页并顺利导出Excel_实用技巧

一.前言       谈到分页,在网页上简直到处都是.网络的资源越来越多,如果不用分页技术来显示,就会拖拉很长很长.下面给大家分享分页技术. 二.基本要点       当要显示数据量足够大的时候,我们往往采用分页显示的处理办法.分页有真分页和假分页. 假分页:从数据库中取出所有的数据,然后分页在界面上显示.访问一次数据库,但由于选择的数据量比较大,所以第一次花费时间比较长,但之后每一页的显示都是直接.快速的,避免对数据库的多次访问. 真分页:确定要显示的数量和内容,然后每次都去数据库取出该少量数

ASP.NET中使用开源组件NPOI快速导入导出Execl数据_实用技巧

相信很多童鞋都开发过Execl的导入导出功能,最近产品中无论是后台数据分析的需要,还是前端满足用户管理的方便,都有Execl导入导出的维护需求产生. 以前做这个功能,如果是web,利用HttpContext.Current.Response.ContentType ="application/ms-excel";就可以导出html数据表格到execl中,这种方法的问题就是编码格式的兼容性太差,用Mac OS之类的 office打开直接乱码给你看.或者是调用office的COM组件,或宏

C#如何快速高效地导出大量数据?

本文转载:http://www.cnblogs.com/herbert/archive/2010/07/28/1787095.html   在C#里面如果对应的把datagridview里面的每个cell的数据一个一个地对应的写入到excel,你会发现非常的慢,这个时候,你可以先把datagrid里面的数据放入到一个二维的string数组里面, 然后利用range对象的value赋值,那样会快很多.代码如下 public static void DataGridViewToExcel(DataG

导出大数据量excel,用POI

问题描述 导出大数据量excel,用POI 需要导出的数据量可能非常大(超过10W条),而且要照顾到没装07Excel的机器,不能用SXSSFworkbook.鉴于一个sheet页最多65000多条记录,那么大数据就需要多个sheet页.由于导出前要先查数据库,是应该一次查出所有数据然后导出还是分次查询?每次查询65000条数据? 解决方案 这么大的文件,excel 2003未必能打开.建议分页存入多个excel文件. 解决方案二: 看速度和效率了,分次是不是速度还快点