C# winform 打印当前窗体
时间: 2023-09-07 12:14:48 浏览: 257
C# winform 万能打印模板,可以打印证书,修改证书参数,C#窗体程序
5星 · 资源好评率100%
要在 C# WinForm 中打印当前窗体,你可以使用以下步骤:
1. 创建一个 PrintDocument 对象。
2. 创建 PrintPage 事件处理程序。
3. 在事件处理程序中使用 DrawToBitmap 方法将窗体绘制到一个 Bitmap 对象上。
4. 使用 Graphics 对象的 DrawImage 方法将 Bitmap 对象绘制到打印文档上。
下面是一个示例代码:
```
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
Bitmap bm = new Bitmap(this.Width, this.Height);
this.DrawToBitmap(bm, new Rectangle(0, 0, this.Width, this.Height));
e.Graphics.DrawImage(bm, 0, 0);
}
private void buttonPrint_Click(object sender, EventArgs e)
{
PrintDocument pd = new PrintDocument();
pd.PrintPage += new PrintPageEventHandler(printDocument1_PrintPage);
pd.Print();
}
```
在这个示例中,我们将打印文档的 PrintPage 事件处理程序绑定到 printDocument1_PrintPage 方法。当用户单击打印按钮时,我们将创建一个新的 PrintDocument 对象,并将其传递到打印对话框中。在 PrintPage 事件处理程序中,我们将当前窗体绘制到一个 Bitmap 对象上,并使用 Graphics 对象的 DrawImage 方法将其绘制到打印文档上。
阅读全文