在我的 WinForms 应用程序中,可以在许多位置打印数据。每次用户想要打印时,我都会创建一个新的 PrintDocument 实例,该实例用于当前的打印作业,然后进行处理。一切正常,但“打印”对话框始终设置回默认打印机及其默认参数。如果选择了另一台打印机,用户必须一次又一次地选择它。
创建一个全局 PrintDocument 实例并为整个应用程序的所有打印作业共享它是一种常见的方法吗?像这样将始终使用最后选择的打印机。或者还有其他方法吗?
谢谢你,彼得
在我的 WinForms 应用程序中,可以在许多位置打印数据。每次用户想要打印时,我都会创建一个新的 PrintDocument 实例,该实例用于当前的打印作业,然后进行处理。一切正常,但“打印”对话框始终设置回默认打印机及其默认参数。如果选择了另一台打印机,用户必须一次又一次地选择它。
创建一个全局 PrintDocument 实例并为整个应用程序的所有打印作业共享它是一种常见的方法吗?像这样将始终使用最后选择的打印机。或者还有其他方法吗?
谢谢你,彼得
您为什么不创建一个PrinterSettings
实例并将其传递给PrintDocument
您创建的每个实例?
您可以使用单例模式来定义 PrinterSettings 实例或 PrintDocument 实例,这样您就不必传递引用。
请参阅单例模式