C#枚举系统安装的所有打印机
点击次数:28 次 发布日期:2008-11-06 08:08:09 作者:源代码网
|
源代码网推荐 源代码网推荐 在下面的程序中我们用到了两个主要的类,把所有的打印机列表出来用到了PrinterSettings 类,获取系统默认打印机用到了PrintDocument 类,下面我们就动手实践一下吧。 源代码网推荐 源代码网推荐 先新建一个windows form的工程,然后加入一个lable和一个comBox,就行啦,关键在下面啦,我们如何获得默认打印机,就得用下面的语句。 源代码网推荐 源代码网推荐PrintDocument prtdoc = new PrintDocument(); 源代码网推荐string strDefaultPrinter = prtdoc.PrinterSettings.PrinterName;//获取默认的打印机名 源代码网推荐 源代码网推荐 有了默认的打印机,我们再把所有的打印机列出来。 源代码网推荐 源代码网推荐 PrinterSettings类有一个InstalledPrinters的属性,不知是做什么的吧,查MSDN如下解释: 源代码网推荐PrinterSettings.InstalledPrinters 获取安装在计算机上所有打印机的名称。 源代码网推荐 源代码网推荐 在C#中如下定义: 源代码网推荐 源代码网推荐[C#] 源代码网推荐[Serializable] 源代码网推荐[ComVisible(false)] 源代码网推荐public static PrinterSettings.StringCollection InstalledPrinters 源代码网推荐{get;} 源代码网推荐 源代码网推荐 属性值 源代码网推荐 源代码网推荐 PrinterSettings.StringCollection,它表示安装在计算机上所有打印机的名称。 源代码网推荐 源代码网推荐 异常 源代码网推荐 源代码网推荐异常类型 条件 源代码网推荐Win32Exception 未能枚举可用的打印机 源代码网推荐 源代码网推荐 备注 源代码网推荐 源代码网推荐 可以使用已安装的打印机名称的集合向用户提供要打印到的打印机选择。 源代码网推荐 源代码网推荐 下面的示例用已安装的打印机填充 comboInstalledPrinters 组合框,并且还在选择更改时使用 PrinterName 属性设置用于打印的打印机。PopulateInstalledPrintersCombo 例程在窗体初始化时被调用。该示例假定存在名为 printDoc 的 PrintDocument 变量,并且存在特定的组合框。 源代码网推荐 源代码网推荐[C#] 源代码网推荐//下面括号内的自己翻译添加进去的 源代码网推荐private void PopulateInstalledPrintersCombo() 源代码网推荐{ 源代码网推荐// Add list of installed printers found to the combo box.(将系统中所有的打机加入列表框) 源代码网推荐// The pkInstalledPrinters string will be used to provide the display string.(列表框中显示的字串由pkInstalledPrinters提供) 源代码网推荐foreach(String pkInstalledPrinters in 源代码网推荐PrinterSettings.InstalledPrinters) 源代码网推荐{ 源代码网推荐comboInstalledPrinters.Items.Add(pkInstalledPrinters); 源代码网推荐} 源代码网推荐} 源代码网推荐 源代码网推荐private void comboInstalledPrinters_SelectionChanged(object sender, System.EventArgs e) 源代码网推荐{ 源代码网推荐 源代码网推荐// Set the printer to a printer in the combo box when the selection changes.(当列表框改变时设置选择的打印机) 源代码网推荐 源代码网推荐if (comboInstalledPrinters.SelectedIndex != -1) 源代码网推荐{ 源代码网推荐// The combo box"s Text property returns the selected item"s text, which is the printer name.(将选择的打印机名在列表框中显示) 源代码网推荐printDoc.PrinterSettings.PrinterName= comboInstalledPrinters.Text; 源代码网推荐} 源代码网推荐 源代码网推荐} 源代码网推荐 源代码网推荐 看了MSDN的说明,懂多了吧,下面是我写练习完整代码. 源代码网推荐 源代码网推荐//程序说明:将系统中的所有打印机在列表框中列出 源代码网推荐//程序变量: PrintDocument prtdoc、string strDefaultPrinter 源代码网推荐//编写人:蚕蛹(sillnet@163.net) 源代码网推荐//日期:2003-03-20 源代码网推荐using System; 源代码网推荐using System.Drawing; 源代码网推荐using System.Drawing.Printing; 源代码网推荐using System.Collections; 源代码网推荐using System.ComponentModel; 源代码网推荐 源代码网供稿. |
