У меня есть следующий код для вызова диалогового окна принтера, но независимо от того, какой принтер я выбрал, он всегда печатает на принтер по умолчанию.
Как назначить пользователям выбранный принтер? (из диалогового окна)
PrintDialog pdlg = new PrintDialog();
// Show the PrintDialog
if (pdlg.ShowDialog() == DialogResult.OK)
{
PrintDocument pd = new PrintDocument();
pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
// Associate PrintDocument object with the PrintDialog
pdlg.Document = pd;
// Print with the new PrinterSettings
pd.Print();
}