winform导出dataviewgrid数据为excel的方法

本文实例讲述了winform导出dataviewgrid数据为excel的方法。分享给大家供大家参考。具体实现方法如下:

代码如下:

#region 导出dataViewGrid视图中的数据为xls格式 
private void btnExportList_Click(object sender, EventArgs e) 

   string fname = string.Empty;

SaveFileDialog sfd = new SaveFileDialog();

sfd.Filter = "表格文件|*.xls"; 
   sfd.DefaultExt = "xls";

if (sfd.ShowDialog() == DialogResult.OK) 
   { 
       fname = sfd.FileName; 
   } 
   else 
   { 
       return; 
   }

//导出当前dataGridView中的所有数据到xls文件 
   //1.引入库文件,新建lib文件夹,复制相关文件 
   //2.在项目中添加对这几个dll的引用 
   //3.在内存中建立 excel表文件 
   HSSFWorkbook workbook = new HSSFWorkbook(); 
   HSSFSheet sheet = workbook.CreateSheet("第一页");

//创建标题头 
   HSSFRow title = sheet.CreateRow(0); 
   title.CreateCell(0).SetCellValue("编号"); 
   title.CreateCell(1).SetCellValue("姓名"); 
   title.CreateCell(2).SetCellValue("性别"); 
   title.CreateCell(3).SetCellValue("年龄"); 
   title.CreateCell(4).SetCellValue("地址"); 
   title.CreateCell(5).SetCellValue("电话"); 
   title.CreateCell(6).SetCellValue("生日"); 
   for (int rowindex = 0; rowindex < dgvStudens.RowCount; rowindex++) 
   { 
       //创建第一行 
       HSSFRow row = sheet.CreateRow(rowindex + 1);

for (int colindex = 0; colindex < dgvStudens.Rows[rowindex].Cells.Count; colindex++) 
       { 
    row.CreateCell(colindex).SetCellValue((dgvStudens.Rows[rowindex].Cells[colindex].Value == null) ? null : dgvStudens.Rows[rowindex].Cells[colindex].Value.ToString()); 
       } 
       ////创建第一行的第一列 
       //HSSFCell cell = row.CreateCell(0); 
       //cell.SetCellType(3); 
       //cell.SetCellValue(dgvStudens.Rows[rowindex].Cells[0].Value.ToString()); 
       ////第一行第2列 
       //row.CreateCell(1).SetCellValue(dgvStudens.Rows[rowindex].Cells[1].Value.ToString()); 
       ////第一行第3列 
       //row.CreateCell(2).SetCellValue(dgvStudens.Rows[rowindex].Cells[2].Value.ToString()); 
       ////第一行第4列,age,可能会为空 
       //// row.CreateCell(3).SetCellValue(dgvStudens.Rows[0].Cells[3].Value.ToString()); 
       //row.CreateCell(3).SetCellValue((dgvStudens.Rows[rowindex].Cells[3].Value == null) ? null : dgvStudens.Rows[rowindex].Cells[3].Value.ToString()); 
   }

using (FileStream fs = new FileStream(fname, FileMode.Create)) 
   {

workbook.Write(fs); 
   }

;

}  
#endregion

希望本文所述对大家的C#程序设计有所帮助。

(0)

相关推荐

  • C#在winform中实现数据增删改查等功能

    winform中利用ado.net实现对单表的增删改查的详细例子,具体如下: 1.前言: 运行环境:VS2013+SQL2008+Windows10 程序界面预览: 使用的主要控件:dataGridview和menuStrip等.  2.功能具体介绍: 1.首先,我们要先实现基本的数据操作,增删改查这几个操作. (1)先定义一个数据库操作的公共类: using System; using System.Collections.Generic; using System.Linq; using S

  • WinForm实现为ComboBox绑定数据源并提供下拉提示功能

    本文实例展示了WinForm实现为ComboBox绑定数据源并提供下拉提示功能,这是一个非常有实用价值的功能,具体实现方法如下: 主要功能代码如下: /// <summary> /// 为ComboBox绑定数据源并提供下拉提示 /// </summary> /// <typeparam name="T">泛型</typeparam> /// <param name="combox">ComboBox<

  • WinForm中窗体间的数据传递交互的一些方法

    实际上过去我也写过类似的主题,这里把各种方法总结一下,内容的确基础了一些,所以这篇文章是写给刚刚学习C#的同行们的,希望对大家有些帮助吧!很抱歉,这篇文章没有诡异的bug来勾起大家的兴趣,但是下篇文章我会努力写些有趣的主题的! 在窗体间传递数据的方法比较多: 1,在子窗体中自定义一个构造函数,参数类型是主窗体,当要显示子窗体的时候,就用这个构造函数来实例化子窗体,然后把this指针传进去,说起来太抽象了,我大概一写大家应该就明白了: 复制代码 代码如下: public class frmMain

  • 绑定winform中DataGrid

    复制代码 代码如下: this.dgTankView.Columns["ID"].DataPropertyName = "ID";            this.dgTankView.Columns["TankName"].DataPropertyName = "Name";            this.dgTankView.Columns["Area"].DataPropertyName = &qu

  • C#(WinForm) ComboBox和ListBox添加项及设置默认选择项

    Web控件DropDownList和WinForm控件ComboBox机制不一样. ComboBox没有对应的ListItem需要自己写一个: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace WinListItem { /// <summary> /// 选择项类,用于ComboBox或者ListBox添加项 /// </summary>

  • winform中的ListBox和ComboBox绑定数据用法实例

    本文实例讲述了winform中的ListBox和ComboBox绑定数据用法.分享给大家供大家参考.具体实现方法如下: 本例实现将集合数据绑定到ListBox和ComboBox控件,界面上显示某个属性的内容,代码如下: 复制代码 代码如下: //... //自定义了Person类(有Name,Age,Heigth等属性) List<Person> persons=new List<Person>(); persons.Add(new Person("WuMiao"

  • Winform实现调用asp.net数据接口实例

    本文实例讲述了Winform实现调用asp.net数据接口的方法,分享给大家供大家参考.具体实现方法如下: 一.问题: 最近一个WPF项目需要改写成android项目,思路是在asp.net项目中编写一个通用接口,便于其它平台下调用数据.刚接触到这些东西的时候完全是一头雾水,最根本的原因是不明白网站中的一个网页,为什么其它项目就可以访问它,并获取数据.带着疑问在asp.net项目编写一个简单的数据接口,并新建一个小winform项目直接访问它. 二.解决方法: 在asp.net项目中编写一个数据

  • WinForm中comboBox控件数据绑定实现方法

    本文实例讲述了WinForm中comboBox控件数据绑定实现方法.分享给大家供大家参考,具体如下: 下面介绍三种对comboBox绑定的方式,分别是泛型中IList和Dictionary,还有数据集DataTable  一.IList 现在我们直接创建一个List集合,然后绑定 IList<string> list = new List<string>(); list.Add("111111"); list.Add("222222"); l

  • C#数据导入/导出Excel文件及winForm导出Execl总结

    一.asp.net中导出Execl的方法: 在asp.net中导出Execl有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出流写给浏览器.在Response输出时,\t分隔的数据,导出execl时,等价于分列,\n等价于换行. 1.将整个html全部输出execl 此法将html中所有的内容,如按钮,表格,图片等全部输出到Execl中. 复制代码 代码如下: Response.Clear(); Response.Buffer= t

  • .Net中导出数据到Excel(asp.net和winform程序中)

    一.asp.net中导出Excel的方法: 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出流写给浏览器.在Response输出时,t分隔的数据,导出Excel时,等价于分列,n等价于换行. 1.将整个html全部输出Excel 此法将html中所有的内容,如按钮,表格,图片等全部输出到Excel中. 复制代码 代码如下: Response.Clear(); Response.Buffer= tru

随机推荐