实现这个功能需要使用windows api
[DllImport("winspool.drv")]public static extern bool SetDefaultPrinter(String Name);//调用win api将指定名称的打印机设置为默认打印机private static PrintDocument PrintDocument = new PrintDocument();public static void SetDefaultPrint(string printName) {List<string> stringList = new List<string>();foreach (var item in PrinterSettings.InstalledPrinters){stringList.Add(item.ToString());}// string PrinterName = PrintDocument.PrinterSettings.PrinterName;//获取当前设置的打印机SetDefaultPrinter(stringList[0]);//使用win api函数设置默认打印机}
亲测运行成功