学习c# winform 打印 参照了网络上诸多资源
效果示意:

操作步骤:
1、新建winform项目及创建窗体

2、拖取 打印 相关控件
   PageSetupDialog 、 PrintDialog 、 PrintDocument 、PrintPreviewDialog

3、设置上述控件的Document属性为相应的PrintDocument

4、设置按钮等控件 及 添加相应按钮事件

5、示意代码如下

按 Ctrl+C 复制代码

按 Ctrl+C 复制代码

代码public partial class Form3 : Form
{public Form3(){InitializeComponent();this.printDocument1.OriginAtMargins = true;//启用页边距this.pageSetupDialog1.EnableMetric = true; //以毫米为单位}//打印设置private void btnSetPrint_Click(object sender, EventArgs e){this.pageSetupDialog1.ShowDialog(); }//打印预览private void btnPrePrint_Click(object sender, EventArgs e){this.printPreviewDialog1.ShowDialog(); }//打印private void btnPrint_Click(object sender, EventArgs e){if (this.printDialog1.ShowDialog() == DialogResult.OK){this.printDocument1.Print();}}//打印内容的设置private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e){                        打印内容 为 整个Form//Image myFormImage;//myFormImage = new Bitmap(this.Width, this.Height);//Graphics g = Graphics.FromImage(myFormImage);//g.CopyFromScreen(this.Location.X, this.Location.Y, 0, 0, this.Size);//e.Graphics.DrawImage(myFormImage, 0, 0);打印内容 为 局部的 this.groupBox1//Bitmap _NewBitmap = new Bitmap(groupBox1.Width, groupBox1.Height);//groupBox1.DrawToBitmap(_NewBitmap, new Rectangle(0, 0, _NewBitmap.Width, _NewBitmap.Height));//e.Graphics.DrawImage(_NewBitmap, 0, 0, _NewBitmap.Width, _NewBitmap.Height); //打印内容 为 自定义文本内容 Font font = new Font("宋体", 12);Brush bru = Brushes.Blue; for (int i = 1; i <= 5; i++){e.Graphics.DrawString("Hello world ", font, bru, i*20, i*20);}}
}
 
转自:http://www.cnblogs.com/freeliver54/archive/2010/10/20/1856978.html

转载于:https://www.cnblogs.com/zhangliang1988/archive/2012/08/13/2636088.html

c# winform 打印 窗体 及 窗体控件内容 的 初级尝试相关推荐

  1. 自定义窗体设计器-控件测试

    自定义窗体设计器-控件测试 基于.net2的自定义窗体设计器控件(类似visual studio的vb,c#设计器,其实就是vs2005的设计器) 控件由四部分组成:工具栏,工具箱,绘图设计区,属性框 ...

  2. Form2(子窗体)调用Form1(父窗体)的控件

    一直在寻找Vs c# 跨窗体数据传递,通俗点讲就是Form2(子窗体)调用Form1(父窗体)的控件,在一篇博客上找到,名称为:Winform跨窗体操作控件(使用委托),感谢大神的分享,转载到博客,时 ...

  3. 二级VB培训笔记06:窗体与常用控件综合案例【个人信息注册】

    二级VB培训笔记06:窗体与常用控件综合案例[个人信息注册] 一.常用控件属性与方法思维导图 二.综合案例--个人信息注册 1.创建工程,修改名称为"个人信息注册",窗体名称设置为 ...

  4. vb.net 教程 3-10 窗体编程 datagridview控件 3 禁止追加行 与 禁止删除行

    版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的. 如<vb.net 教程 3-10 窗体编程 datagridview控件 1 初步 > ...

  5. C# 窗体应用TreeView控件使用

    C# 窗体应用TreeView控件使用 前言: TreeView控件在窗体应用里面使用也是频率比较高的,我们在使用TreeView一般是对资源的分层展示,类似数据结构里面树的凹入表示法.很多公司都是使 ...

  6. 2、Web 窗体的基本控件——文本框控件(TextBox)

    2.Web 窗体的基本控件--文本框控件(TextBox) 文本框控件(TextBox) 前端 <%@ Page Language="C#" AutoEventWireup= ...

  7. 1、Web 窗体的基本控件——标签控件(Label)

    1.Web 窗体的基本控件--标签控件(Label) 标签控件(Label) 前端 <%@ Page Language="C#" AutoEventWireup=" ...

  8. 3、Web 窗体的基本控件——按钮控件(Button,LinkButton)

    3.Web 窗体的基本控件--按钮控件(Button,LinkButton) 按钮控件(Button,LinkButton) 前端 <%@ Page Language="C#" ...

  9. 5、Web 窗体的基本控件——复选框控件和复选组控件(CheckBox 和 CheckBoxList)

    5.Web 窗体的基本控件--复选框控件和复选组控件(CheckBox 和 CheckBoxList) 复选框控件和复选组控件(CheckBox 和 CheckBoxList) 前端 <%@ P ...

最新文章

  1. Laravel5中Cookie的使用
  2. 黑龙江智能车邀请赛中的单车比赛
  3. vb调用excel方法详解及操作相关操作命令大全
  4. 题目1181:遍历链表
  5. 洛谷P3391文艺平衡树(Splay)
  6. java 取数组的前90位_java 从int数组中获取最大数的方法
  7. 机器学习基础(七)——sigmoid 函数的性质
  8. 主角有智能芯片的种田小说_5本搞笑玩梗的良品小说,文风轻松幽默,一本正经地逗你笑...
  9. 【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法
  10. Mysql 之 缓存更新策略
  11. VUE+ElementUI实现div滚动条替换
  12. Win8.1 安装NLTK及nltk数据
  13. 基于JAVA后台微信买菜小程序系统 开题报告
  14. 零基础学Java语言--第6周编程题
  15. 海量数据大课学习笔记(8)-账号微服务注册模块+短信验证码+阿里云OSS开发实战-小滴课堂
  16. python 返回函数 变量_你如何设置一个变量等于由python函数返回的值
  17. C# 反射实例化对象
  18. JavaScript 引用数据类型
  19. 计算机科学期刊和山西大学学报比较,山西大学学报是核心期刊吗_山西大学是211吗_山西大学...
  20. C语言编程>第二十三周 ⑤ 请补充main函数,该函数的功能是:求1~100(不包括100)以内所有素数的平均值。

热门文章

  1. 新疆师范大学计算机研究生值得读吗,研究生还值得读吗
  2. Java RandomAccessFile示例
  3. c ++中哈希表如何访问_C / C ++中的哈希表–完整的实现
  4. Liferay教程– Liferay门户Portlet教程
  5. VS2012下创建QT5应用程序
  6. unix进程的环境--unix环境高级编程读书笔记
  7. Java面试题:Java垃圾收集有哪些算法,AQS组件总结
  8. CentOS下通过yum安装svn及配置
  9. 基于 Generator 和 Iterator 的惰性列表
  10. msscript 64位找不到的替代方法