【问题标题】:c# webbrowser control printingc# webbrowser控制打印
【发布时间】:2010-12-25 16:09:51
【问题描述】:

我在应用程序中使用 Web 浏览器控件来显示报告。该报告只是纯 HTML 文本,但相当宽。当我使用.ShowPrintPreviewDialog() 预览打印时,我看到报告在右侧被截断,即使切换到横向模式也是如此。

目前我只调用.ShowPrintPreviewDialog() 方法,然后调用.ShowPrintDialog() 方法来实际打印报告。

我的问题是……如何让报告打印在多页上?我可以在横向模式下将报告跨越 X 个页面,但我不确定要设置什么标志或如何设置控件以实际将报告拆分为多个页面。

【问题讨论】:

    标签: c# html printing webbrowser-control


    【解决方案1】:

    为什么不让 webbrowser 控件为您处理打印。我已经成功地做到了这一点,其中报告数据位于 xml 中,并将 xslt 转换应用于 html 并使用 webbrowser 控件来显示报告并让用户在打印时做出选择。这是webbrowser wrapper 上的 CodeProject 链接。有一种方法可以进行打印(包括控件本身呈现的打印预览)。

    希望这会有所帮助, 最好的祝福, 汤姆。

    【讨论】:

    • @tommieb75:感谢您的回复!实际上,我让浏览器为我处理打印,我认为这就是导致问题的原因。我不知道为什么,但它不会在多页上打印整个报告。它只是停在某个点。我只是在控件中使用本机打印方法。
    • @Scott Vercuski:哦……现在我明白了,我现在不确定你会怎么做……但是看看这里……codeproject.com/KB/printing/custom_paper_sizes.aspx,other 比我难过。 .我想会有一个选项通过 p/invoke 来强制在多个页面上打印布局。我还没有看到 IE 这样做... :( 对不起,如果我不能再帮助你了..
    • @tommieb75:没关系!我很感激你的努力!我会深入研究打印链接,看看它会把我引向何方。再次感谢。
    猜你喜欢
    • 1970-01-01
    • 2010-10-11
    • 2010-09-15
    • 1970-01-01
    • 2012-02-20
    • 1970-01-01
    • 2020-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多