C# 默认打印机设置


 

private void frmBarCode_Load(object sender, EventArgs e)
{

 bindCbox();

}

#region 选择打印机
[DllImport("winspool.drv")]
public static extern bool SetDefaultPrinter(String Name); //调用win api将指定名称的打印机设置为默认打印机

private static PrintDocument fPrintDocument = new PrintDocument();
//获取本机默认打印机名称
public static String DefaultPrinter()
{
return fPrintDocument.PrinterSettings.PrinterName;
}
public static List<String> GetLocalPrinters()
{
List<String> fPrinters = new List<String>();
fPrinters.Add(DefaultPrinter()); //默认打印机始终出现在列表的第一项
foreach (String fPrinterName in PrinterSettings.InstalledPrinters)
{
if (!fPrinters.Contains(fPrinterName))
{
fPrinters.Add(fPrinterName);
}
}
return fPrinters;
}

//获取当前默认打印机信息

private void bindCbox()
{
List<String> PrinterList = new List<String>();
PrinterList = GetLocalPrinters();
foreach (String strpinter in PrinterList)
{
cmbPrinter.Properties.Items.Add(strpinter);
}
if (cmbPrinter.SelectedItem == null)
{
cmbPrinter.SelectedIndex = 0;
}
else
{
cmbPrinter.SelectedIndex = 0;
}
}

private void cmbPrinter_SelectedIndexChanged(object sender, EventArgs e)
{
SetDefaultPrinter(cmbPrinter.SelectedText);
}
#endregion


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM