我需要一些帮助。 我的要求是当用户点击打印按钮时,它应显示打印预览对话框。 如果用户取消或关闭预览对话框,则表单必须返回原始状态。
我面临的问题是打印预览对话框是可见的。但我不知道如何捕获打印预览工具点击事件。
public void print()
{
PrintDialog pd = new PrintDialog();
PrintDocument pdoc = new PrintDocument();
PrinterSettings ps = new PrinterSettings();
PaperSize psize = new PaperSize();
pdoc.DefaultPageSettings.Landscape = false;
pd.Document = pdoc;
pd.Document.DefaultPageSettings.PaperSize = psize;
pdoc.PrintPage += new PrintPageEventHandler(pdoc_PrintPage);
DialogResult result = pd.ShowDialog();
if (result == DialogResult.OK)
{
PrintPreviewDialog ppd = new PrintPreviewDialog();
ppd.Document = pdoc;
ppd.ShowDialog();
pdoc.Print();
}
}
如果我将PrintPreviewDialog代码放在pd.ShowDialog()之前,在预览模式下什么都不可见。 这不起作用
PrintPreviewDialog ppd = new PrintPreviewDialog();
ppd.Document = pdoc;
ppd.ShowDialog();
DialogResult result = pd.ShowDialog();
if (result == DialogResult.OK)
{
pdoc.Print();
}
答案 0 :(得分:0)
所以工作方式是真是假
PrintDialog pri = new PrintDialog();
if (pri.ShowDialog() == true)
{
pri.PrintQueue.AddJob(fileName, fileName,false);
}
else
{
return;
}
你也不能使用pri.ShowDialog()作为已经调用该方法的if语句。