1

我想将 printDocument 发送到第二个表单,以在 printPreviewControl 中显示它放置在第二个表单中。

表格1代码

在 form1 中定义了具有公共访问权限的 printDocument 类

public System.Drawing.Printing.PrintDocument printDocument;

form2代码

private void Form2_Load(object sender, EventArgs e)
{
        Form1 form1 = new Form1;
        printPreviewControl.Document = form1.printDocument;
}

我确定 form1 中的 printDocument 有要打印的文档,但是当 form2 加载时 printPreviewControl 中没有显示任何内容。在显示form2之前应该调用form1中的printDocument的什么方法?

4

1 回答 1

1

您的示例应该可以正常工作,但 PrintPreviewControl 只会呈现它在附加到 PrintDocument 的 PrintPage 事件期间提供的内容。

如果您在 PrintPage 事件期间没有执行任何操作,则打印预览将是一个空白文档。

如果您将 PrintPreviewControl 放在 Form1 上,那么您可能会收到相同的行为。

于 2009-12-13T18:28:59.010 回答