Совместное использование одного экземпляра PrintDocument - PullRequest
1 голос
/ 28 декабря 2008

В моем приложении WinForms данные могут быть распечатаны во многих местах. Каждый раз, когда пользователь хочет напечатать, я создаю новый экземпляр PrintDocument, который используется для текущего задания печати, а затем удаляется. Все работает, но в диалоговом окне «Печать» всегда установлен принтер по умолчанию и его параметры по умолчанию. Если выбран другой принтер, пользователь должен выбирать его снова и снова.

Является ли распространенным подходом создание одного глобального экземпляра PrintDocument и его использование для всех заданий печати в приложении? Таким образом, всегда будет использоваться последний выбранный принтер. Или есть другие способы?

Спасибо, Petr

Ответы [ 2 ]

5 голосов
/ 28 декабря 2008

Почему бы вам не создать один PrinterSettings экземпляр и передать его каждому PrintDocument, который вы создаете вместо этого?

0 голосов
/ 29 декабря 2008

Вы можете использовать шаблон синглтона для определения экземпляра PrinterSettings или экземпляра PrintDocument, чтобы вам не приходилось передавать ссылку.

См. Шаблон синглтона

...