У меня есть объект Window, который я хотел бы создать, установить некоторые значения, а затем отправить прямо на принтер, не показывая его. Я думал, что это правильно, но показывает пустой документ.
PrintDialog dlg = new PrintDialog();
ReportWindow rw = new ReportWindow(); //WPF Window object
var sz = new Size(96*8.5, 96*11); //size of a paper page, 8.5x11
rw.Measure(sz); rw.Arrange(new Rect(sz));
// rw.Show(); //want to keep it hidden
dlg.PrintVisual(rw, "report printout");
rw.Close();
Чтобы убедиться, что код печати в порядке, я помещаю его в событие Loaded формы, вызываю Show (), и он работает нормально.