/// <summary>
/// 导出Excel
/// </summary>
private void ExportExcel(DataTable ExcelDt)
{
//导出表格
HSSFWorkbook workBook = new HSSFWorkbook();
ISheet sheet1 = workBook.CreateSheet("表名");
//表头
IRow headerRow = sheet1.CreateRow(0);
foreach (DataColumn column in ExcelDt.Columns)
{
headerRow.CreateCell(column.Ordinal).SetCellValue(column.ColumnName);
}
int rowIndex = 1;
foreach (DataRow dr in ExcelDt.Rows)
{
IRow dataRow = sheet1.CreateRow(rowIndex++);
foreach (DataColumn column in ExcelDt.Columns)
{
dataRow.CreateCell(column.Ordinal).SetCellValue(dr[column.ColumnName].ToString());
}
}
SaveFileDialog sfd = new SaveFileDialog();
sfd.DefaultExt = ".xls";
sfd.Filter = "(*.xls)|*.xls";
if (sfd.ShowDialog() == true)
{
try
{
FileStream file = new FileStream(sfd.FileName, FileMode.Create);
workBook.Write(file);
file.Dispose();
MessageDialog.Show("导出成功!", "提示");
}
catch (Exception)
{
MessageDialog.Show("该文件正在被其他进程占用,导出失败!", "提示");
}
}
}

  使用NPOI.dll ,上述代码是使用DLL 1.2.4.0,可能使用的DLL不同,代码略有不同。比如,有的版本的NPOI.dll 的是使用的是Sheet而非ISheet。

2.导出图片

        /// <summary>
/// 图片转化为bitmap
/// </summary>
/// <param name="chartTemp"></param>
/// <returns></returns>
private Bitmap GetControlMap(Control ctrl)
{
System.Windows.Point point = ctrl.PointToScreen(new System.Windows.Point(0, 0));
System.Drawing.Bitmap bitmap = new Bitmap((int)ctrl.Width, (int)ctrl.Height);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
System.Drawing.Size size = new System.Drawing.Size((int)ctrl.Width, (int)ctrl.Height);
g.CopyFromScreen((int)point.X, (int)point.Y, 0, 0, size);
return bitmap;
}

  

        /// <summary>
/// 导出图片
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnToImage_Click(object sender, RoutedEventArgs e)
{
SaveFileDialog sfd = new SaveFileDialog();
sfd.DefaultExt = ".jpg";
sfd.Filter = "(*.jpg)|*.jpg";
if (sfd.ShowDialog() == true)
{
Bitmap bitmap = GetControlMap(humiCloud);
bitmap.Save(sfd.FileName);
MessageDialog.Show("导出成功!", "提示");
}
}

  

												

WPF 导出Excel 导出图片的更多相关文章

  1. PHP导入导出excel表格图片(转)

    写excel的时候,我用过pear的库,也用过pack压包的头,同样那些利用smarty等作的简单替换xml的也用过,csv的就更不用谈了.呵呵.(COM方式不讲了,这种可读的太多了,我也写过利用wp ...

  2. PHP导入导出excel表格图片的代码和方法大全

    基本上导出的文件分为两种: 1:类Excel格式,这个其实不是传统意义上的Excel文件,只是因为Excel的兼容能力强,能够正确打开而已.修改这种文件后再保存,通常会提示你是否要转换成Excel文件 ...

  3. 【SSM 】导出excel含图片

    ExprotRentUtils package com.kikyo.stat.utils; import java.awt.image.BufferedImage; import java.io.By ...

  4. yii2 数据导出 excel导出以及导出数据时列超过26列时解决办法

    作者:白狼 出处:http://www.manks.top/article/yii2_excel_extension​ 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给 ...

  5. NPOI 导出excel带图片,可控大小

    using NPOI.HSSF.UserModel;using NPOI.HSSF.Util;using NPOI.DDF;using NPOI.SS.UserModel;using System.I ...

  6. asp.net 导出excel带图片

    protected void btgua_Click(object sender, EventArgs e) { DataTable dt = ds.Tables[0]; if (dt != null ...

  7. npoi导出excel 导出List<T>

    using System.Collections.Generic; using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using NPOI.XSS ...

  8. Birt导出Excel图片

    有一段时间没有使用Birt了,最近突然之间发现新版的Birt可以支持导出Excel附带图片.我目前下载的是Birt 4.3版本的,导出图片的也只能在Excel 2007下面能够实现,2003的xls格 ...

  9. thinkphp3.2.3 excel导出,下载文件,包含图片

    关于导出后出错的问题 https://segmentfault.com/q/1010000005330214 https://blog.csdn.net/ohmygirl/article/detail ...

随机推荐

  1. 如何在CRichEditCtrl控件中直接读如RTF格式的文件(这个是通过流的方式来读取文件)

    如何在CRichEditCtrl控件中直接读如RTF格式的文件   Inserting an RTF string using StreamIn   ------------------------- ...

  2. 暑假集训test-8-14~8-15

    我不想写博客辣. 拖了三天的一起写,结果就是写不下去了...果然应该改一道写一道么.. 题面题解代码也懒得往博客上放了,屯U盘里了... 因为太菜还有两道没有改. 题解外的一些参考: lyc大佬的进程 ...

  3. layui点击按钮自动刷新页面问题

    问题 <button class="layui-btn layui-btn-primary" onclick="findData()">查询< ...

  4. How to Hide Apache Tomcat Version Number from Error Pages

    1. 进入tomcat lib目录 cd /usr/local/tomcat7/lib 2. 解压catalina.jar jar xvf catalina.jar 3. 修改ServerInfo.p ...

  5. Http学习(一)

    HTTP 超文本传输协议 综述: HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客户(如Web浏览器)能够从 ...

  6. SpringBoot-application:application.yml/配置文件详解

    ylbtech-SpringBoot-application:application.yml/配置文件详解 springboot采纳了建立生产就绪spring应用程序的观点. Spring Boot优 ...

  7. PHP面向对象之继承的基本思想

    图例 概念和说明 代码展示 <?php header('content-type:text/html;charset=utf-8'); //学生考试系统 class Student{ publi ...

  8. Map、可变参数、静态导入、Collections、Arrays、集合嵌套

    Map双列集合 key 键 value 值 方法: put(K, V) //判断key值是否相等,相等,覆盖元素,不相等,存储 remove(K) Map集合的遍历(不要看到java提供了很多方法做一 ...

  9. vue导航条选中项样式

    html: <div id="app"> <div class="collection"> <a href="#!&qu ...

  10. 17.splash_case06_ScrapySplashTest-master

    taobao.py # -*- coding: utf-8 -*- from scrapy import Spider, Request from urllib.parse import quote ...