下拉列表显示系统安装的所有打印机



c#.net 实现了下拉列表显示系统安装的所有打印机,并且把默认的打印机作为下拉列表的默认项。
PrinterSettings 类:列举系统中安装的所有打印机名称。
PrintDocument 类:获取默认的打印机名称。
具体程序如下:

using  System;
using  System.Drawing;
using  System.Drawing.Printing;
using  System.Collections;
using  System.ComponentModel;
using  System.Windows.Forms;
using  System.Data;

namespace  PrinterList
{
 
///  
 
///  Form1 的摘要说明。
 
///  
   public   class  Form1 : System.Windows.Forms.Form
  {
  
  
private  System.Windows.Forms.Label label1;
  
private  System.Windows.Forms.ComboBox printerList;
  
///  
  
///  必需的设计器变量。
  
///  
   private  System.ComponentModel.Container components  =   null ;

  
public  Form1()
  {
   
///
   
///  Windows 窗体设计器支持所必需的
   
///
      InitializeComponent();
      PrintDocument prtdoc 
=   new  PrintDocument();
      
string  strDefaultPrinter  =  prtdoc.PrinterSettings.PrinterName; // 获取默认的打印机名

      
foreach  ( string  ss  in  PrinterSettings.InstalledPrinters)
      {
          
/// 在列表框中列出所有的打印机,
          printerList.Items.Add(ss);
          
if  (ss  ==  strDefaultPrinter) // 把默认打印机设为缺省值
          {
              printerList.SelectedIndex 
=  printerList.Items.IndexOf(ss);
          }
      }

   
///
   
///  TODO: 在 InitializeComponent 调用后添加任何构造函数代码
   
///
  }

  
///  
  
///  清理所有正在使用的资源。
  
///  
   protected   override   void  Dispose(  bool  disposing )
  {
      
if  ( disposing )
   {
    
if  (components  !=   null
    {
        components.Dispose();
    }
   }
      
base .Dispose( disposing );
  }

      
#region  Windows Form Designer generated code
  
///  
  
///  设计器支持所需的方法 - 不要使用代码编辑器修改
  
///  此方法的内容。
  
///  
   private   void  InitializeComponent()
  {
  label1 
=   new  System.Windows.Forms.Label();
      printerList 
=   new  System.Windows.Forms.ComboBox();
     SuspendLayout();
  
//  

      label1.Location 
=   new  System.Drawing.Point( 8 24 );
      label1.Name 
=   " label1 " ;
      label1.Size 
=   new  System.Drawing.Size( 72 16 );
      label1.TabIndex 
=   0 ;
      label1.Text 
=   " 选择打印机: " ;
           
///
      printerList.Location  =   new  System.Drawing.Point( 88 22 );
      printerList.Name 
=   " printerList " ;
      printerList.Size 
=   new  System.Drawing.Size( 192 21 );
      printerList.TabIndex 
=   1 ;
      printerList.Text 
=   " 当前系统未装打印机 " ;

      AutoScaleBaseSize 
=   new  System.Drawing.Size( 5 13 );
      ClientSize 
=   new  System.Drawing.Size( 288 61 );
      Controls.AddRange(
new  System.Windows.Forms.Control[]{
      printerList,
      label1});
      Name 
=   " Form1 " ;
      Text 
=   " 打印机列表 " ;
      ResumeLayout(
false );

  }
      
#endregion

  
///  
  
///  应用程序的主入口点。
  
///  
  [STAThread]
  
static   void  Main() 
  {
      Application.Run(
new  Form1());
  }

 }
  }
}

转载于:https://www.cnblogs.com/army666/archive/2005/10/20/258557.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值