weixin_44151228 2023-01-06 22:06 采纳率: 58.3%
浏览 22
已结题

c#中打印预览为什么只能预览一页?

c#中打印预览为什么只能预览一页,加入有多页内容,如何添加到打印预览中?

  • 写回答

2条回答 默认 最新

  • |__WhoAmI__| 2023-01-06 22:20
    关注

    可以使用 PrintDocument 类的 PrintPage 事件来实现多页打印。

    PrintPage 事件会在每页打印时触发,可以在事件处理程序中绘制当前页的内容。 当所有页都已打印完成时,可以调用 e.HasMorePages 属性来指示是否还有更多要打印的页。

    下面是一个简单的示例代码,展示了如何使用 PrintPage 事件实现多页打印:

    private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
    {
        // 绘制当前页的内容
        // e.Graphics 对象提供了用于绘制页面的方法
        e.Graphics.DrawString("Hello, World!", new Font("Arial", 12), Brushes.Black, 0, 0);
    
        // 如果还有更多要打印的页,设置 e.HasMorePages 为 true
        if (currentPage < totalPages)
        {
            e.HasMorePages = true;
            currentPage++;
        }
        else
        {
            e.HasMorePages = false;
        }
    }
    

    仅供参考,望采纳,谢谢。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月9日
  • 请提交代码 1月8日
  • 创建了问题 1月6日

悬赏问题

  • ¥15 kali linux用wget archive.kali.org/archive-key.asc指令下载签名无效(失败)
  • ¥15 openHarmony 利用c++程序在dayu210开发板上实现拉取RTSP视频流并且在屏幕上显示
  • ¥15 GD32H757的can通信配置
  • ¥20 nist随机数测试的问题
  • ¥20 帮我解决这个项目,thank you各位程序员
  • ¥15 哪位能用ea软件做一下,有偿
  • ¥15 按要求编写汇编语言,并设计仿真电路图
  • ¥15 电脑软件运行次数如何统计
  • ¥15 同一个浏览器打开两个窗口怎么区分会话
  • ¥100 如何编写自己的emmc镜像