为了账号安全,请及时绑定邮箱和手机立即绑定

c# winform打印预览问题 求高手指教

c# winform打印预览问题 求高手指教

眼眸繁星 2018-08-16 10:06:21
最近在做个项目,涉及到一个展示打印预览的问题,现在知道有两种解决方案:第一个是调用word中的PrintPreview打印预览功能,这种方法显示没问题,但是在点击关闭以后会显示所预览的word文档,还要再点击关闭当前的文档,而且还有可能对文档进行修改,我理解可能是因为先调用了word应用程序而后从外部操作打开office自带的预览功能,这种方式用户体验度不好;第二个是.net中的PrintPreviewDialog控件,他的显示效果完全是我想要的样子,但是需要关联PrintDocument,而这个PrintDocument如何指定我本地的word文档呢(test.doc)??现在显示的预览效果是空白的~~综上呢  我只是想单机按钮,显示本地word的打印预览模式,并且不显示word文档!有高手能帮我解决这个问题吗?或者有其他解决方案也可以,在此谢过了,这个问题已经琢磨好几天了,一直没有好办法实现!
查看完整描述

2 回答

?
交互式爱情

TA贡献1712条经验 获得超3个赞

楼主遇到的第一给问题可以这样解决:在 try...catch语句块的finally中添加一个循环:while (wApp.PrintPreview){}。如果用户关闭预览窗口,PrintPreview的值为false,跳出循环后,再执行关闭word文档的操作。

finally
{
if (wApp != null)
{
while (wApp.PrintPreview) 
{
//这里这么做是因为在用户关闭了预览窗口后,却打开了word文档,但是要求必须在用户关闭预览窗口后不能打开文档的
}
wApp.Quit();
System.Runtime.InteropServices.Marshal.ReleaseComObject(wApp);
wApp = null;
}
GC.Collect();
}


查看完整回答
反对 回复 2018-08-20
  • 2 回答
  • 0 关注
  • 881 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信