找回密码
 立即注册

QQ登录

只需一步,快速开始

Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-29 17:54:41
11#
我理解的是Print()方法,就与之前打印一张报表的方法相同,直接复制过来就可以了~~
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-30 10:57:31
12#
本帖最后由 Lenka.Guo 于 2016-3-30 11:02 编辑

hi,朱工,看到给您发的消息了没?

跟咱们电话中沟通一样,如果要实现批量打印,使用WPF.Viewer.Print()方法不可行,
通过验证,调用pageDocument的print方法,直接实现报表打印,是可行的。
实现步骤:
1. 添加GrapeCity.ActiveReports.Viewer.Win.v10.dll;
2. 在文件中引用:
using GrapeCity.ActiveReports;
3.  生成PageDocumnet对象之后,调用Print() 方法:


            for (int j = 0; j < 3;j++ )
            {
                int temp = ID[j];
                GrapeCity.ActiveReports.PageReport PRT = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo("PageReport1.rdlx"));
                PRT.Report.ReportParameters[0].DefaultValue.Values.Add(temp.ToString());
                GrapeCity.ActiveReports.Document.PageDocument pageDocument = new GrapeCity.ActiveReports.Document.PageDocument(PRT);
                pageDocument.Print(false, false, false);
}


源码:      



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
CanYou8
银牌会员   /  发表于:2016-3-30 16:48:06
13#
Lenka.Guo 发表于 2016-3-30 10:57
hi,朱工,看到给您发的消息了没?

跟咱们电话中沟通一样,如果要实现批量打印,使用WPF.Viewer.Print() ...

非常感谢!这个思路是可行的,我这边也看到了效果。
还有个问题请教下:如何设置打印为双面打印(打印机支持双面打印)?因为采用的是批量打印,每一份都在弹出的打印对话框中设置双面打印太麻烦,所以希望能找到一种代码控制的方式来实现。
回复 使用道具 举报
Lenka.Guo讲师达人认证 悬赏达人认证
超级版主   /  发表于:2016-3-31 18:44:49
14#
您好,双面打印是打印机的功能,为了方便,可以保存打印机设置的,每次调用打印机时,使用您自定义的设置就可以了。
找到了一些自定义打印设置的资料,您可以参考:http://blog.sina.com.cn/s/blog_71d2bc9301012bn0.html
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部