winform中,printDocment类,10行信息,后五行在打印时在第二页打印,即共用二页纸打印出10行信息,怎么做?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform中,printDocment类,10行信息,后五行在打印时在第二页打印,即共用二页纸打印出10行信息,怎么做?相关的知识,希望对你有一定的参考价值。

参考技术A 你是怎么输出的。如果你是分开打印可以利用点击两次按钮来实现,每点一次按钮就形成一个打印文档。你应该懂的。
其他的你如果是一次打印可以借助一些打印报表的工具,比如rdlc报表,在rdlc报表中你把上下的距离拉开大一点,就可以实现一次打印,打印多张。呵呵,建议你有空多看看关于打印的信息很简单。希望可以帮到你

[Winform-WebBrowser]-在html页面中js调用winForm类方法

   在winform项目中嵌入了网页,想通过html页面调用后台方法,如何实现呢?其实很简单,主要有三部:

 

1、在被调用方法类上加上[ComVisible(true)]标签,意思就是当前类可以com组件的形式供外包调用

2、在webBrowser控件中设置可被html页面调用的类即:webBrowser1.ObjectForScripting = this;前端即可通过window.external访问this对象

3、html页面调用后台方法:window.external.方法名(); 此处的window.external相当于webBrowser1.ObjectForScripting

 

 1    //ComVisible 设置对外的可访问性,在html中可使用 js 访问成员方法
 2     [ComVisible(true)]
 3     public partial class Form1 : Form
 4     {
 5         public Form1()
 6         {
 7             InitializeComponent();
 8         }
 9 
10         private void Form1_Load(object sender, EventArgs e)
11         {
12             //browser.Url = new Uri("https://www.baidu.com");
13             browser.Url = new Uri("http://localhost:3133/index.html");
14             browser.ObjectForScripting = this;
15         }
16 
17         private void btnSearch_Click(object sender, EventArgs e)
18         {
19             HtmlElement kw = browser.Document.All["kw"];
20             HtmlElement btn = browser.Document.All["su"];
21 
22             string txt = txtwd.Text.Trim();
23             kw.SetAttribute("value", txt);
24             btn.InvokeMember("click");
25         }
26 
27         private void btnDo_Click(object sender, EventArgs e)
28         {
29             int[] arr = { 1, 23 };
30             browser.Document.InvokeScript("f",new object[] { "{1,2,3}" });
31         }
32 
33         public void WinF(string arg)
34         {
35             MessageBox.Show(arg);
36         }
37     }

html 代码:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
    <meta charset="utf-8" />
</head>
<body>
    <h1>Hello World!</h1>

    <button onclick="ext()">external</button>
    
    <script>    
        
        var f = function (msg) {
            //if()
            alert(Object.prototype.toString.call(msg));
        }
        //调用winform 中的方法
        function ext() {
            //调用winform 中的方法
            window.external.WinF("hello");
        }
    
    </script>


</body>
</html>

 

以上是关于winform中,printDocment类,10行信息,后五行在打印时在第二页打印,即共用二页纸打印出10行信息,怎么做?的主要内容,如果未能解决你的问题,请参考以下文章

WinForm BaseClass类常用通用方法

winform如何全局调用一个外部的类?

[Winform-WebBrowser]-在html页面中js调用winForm类方法

安装winform程序时自动安装windows服务

在类库或winform项目中打开另一个winform项目窗体的方法

C#打印的时候如何设置A4纸张为横向