关闭

【C#】打印控件中的内容和打印窗体中的内容

标签: C#打印
4191人阅读 评论(0) 收藏 举报
分类:

效果示意:


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

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

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

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

5、示意代码如下

代码

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);
        }
    }
}


0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

最近在做一个报表系统,c# Winform 用到的一个打印控件

给大家分享一下,控件dll等下上传到资源。直接把源码给搞出来了。适合新手看哦 private void tabControl1_Click(object sender, EventArgs e)...
  • u010556068
  • u010556068
  • 2013-12-12 13:13
  • 3134

winform实现发票打印功能

各位博友,好久没有更新博客了,前两天一个交流中的好友研究了一套winform中的打印功能,再此向这位好友【杭州-andy】表示感谢,感谢他提供这么好的素材让大家学习。          直入主题,实...
  • fwj380891124
  • fwj380891124
  • 2012-10-15 10:05
  • 8395

C#WinForm程序中选择打印机打印

之前写程序,调用Microsoft.Office.Interop.Word动态生成doc文档并打印。   由于在打印时直接实例化一个Word.Document对象,并使用其PrintOut()方法打印...
  • W2KExp
  • W2KExp
  • 2015-09-20 22:16
  • 5517

C#开发 ActiveX 小票打印控件

C#开发ActiveX小票打印控件,去年帮朋友搞一个IE打印控件,在网上找了很多都不满足,要么是不能直接打印,要么是不能指定打印机,还有的是不能自定义样式。在网上折腾了一个周,还没搞定,于是想还不如自...
  • hfrommane
  • hfrommane
  • 2017-02-05 00:16
  • 1395

免费DataGridView打印及.NET轻松打印控件5.5版(VB打印,C#打印)

  • 2014-02-08 02:30
  • 13.20MB
  • 下载

WinForm打印控件使用示例源码

  • 2013-04-01 14:20
  • 268KB
  • 下载

C# Winform 无弹窗打印实例

在Winform 中可以通过打印控件方便的实现应用程序打印功能,本文将使用一个简单实例进行演示。 操作步骤: 1、新建winform项目及创建窗体 2、拖取 打印 相关控件     PrintDi...
  • dh164645822
  • dh164645822
  • 2016-08-01 17:19
  • 1875

c# winform 打印控件

  • 2013-12-12 13:23
  • 1.46MB
  • 下载

C#代码 打印WinForm中Panel的内容

1.新建窗口Form1,在上面拖1个Panel,1个Button,1个printDocument,1个printDocument1 2.在Form1.cs中写入代码: private void...
  • xiaoxiali
  • xiaoxiali
  • 2014-02-18 16:48
  • 7998

c# winform页面信息的打印

对于打印页面来说,网页打印有很大的优势,因为有函数直接打印window.Print()就可以了很方便,但是对于winform除了使用一些第三方的类库之外就需要自己写代码了。 PrintDocumen...
  • bjut_yue
  • bjut_yue
  • 2013-05-17 19:56
  • 1265
    个人资料
    • 访问:189372次
    • 积分:2628
    • 等级:
    • 排名:第15978名
    • 原创:90篇
    • 转载:18篇
    • 译文:1篇
    • 评论:33条
    文章分类
    最新评论