C#获取打印机列表

一、PrinterSettings类

  1. 要用到的类PrinterSettings,在CSDN中的解释如下:

    System.Object
    System.Drawing.Printing.PrinterSettings

    命名空间: System.Drawing.Printing
    程序集: System.Drawing(在 System.Drawing.dll 中)

  2. 主要方法及属性

    属性或方法

    说明

    InstalledPrinters

    获取安装在计算机上所有打印机的名称。

    PrinterName

    获取或设置要使用的打印机的名称。

      二、实例

      1. 新建Windows Application应用程序;
      2. 在form中添加控件,主要包括用来显示打印机列表lstPrinter(ListBox控件),以及默认打印机名称lblDefault(label控件).
      3. 在窗体Load事件中添加代码,用来列出当前所有打印机,以及系统默认连接的打印机。

      using System;
      using System.Collections.Generic;
      using System.ComponentModel;
      using System.Data;
      using System.Drawing;
      using System.Linq;
      using System.Text;
      using System.Windows.Forms;
      using System.Drawing.Printing;//添加命名空间

      namespace DisplayPrinter
      {
          public partial class Form1 : Form
          {
              public Form1()
              {
                  InitializeComponent();
              }

              private void Form1_Load(object sender, EventArgs e)
              {
                  PrintDocument print = new PrintDocument();
                  string sDefault = print.PrinterSettings.PrinterName;//默认打印机名
                  lblDefault.Text = sDefault;

                  foreach (string sPrint in PrinterSettings.InstalledPrinters)//获取所有打印机名称
                  {
                      lstPrinter.Items.Add(sPrint);
                      if (sPrint == sDefault)
                          lstPrinter.SelectedIndex = lstPrinter.Items.IndexOf(sPrint);
                  }
              }
          }
      }

      4.演示结果

      image

      原文地址:https://www.cnblogs.com/janes/p/1985143.html