vb.net セットアップされているプリンタをコンボボックスに表示。

' プリンタを設定する
cmbPrinter.Items.Clear()
For Each ipn As String In Printing.PrinterSettings.InstalledPrinters
    cmbPrinter.Items.Add(ipn)
Next

初期値を通常使うプリンタにする場合。

' PrinterDocumentの作成
Dim prnDoc As New System.Drawing.Printing.PrintDocument
' プリンタ名の取得
Dim defaultPrinter As String = prnDoc.PrinterSettings.PrinterName

' プリンタを設定する
cmbPrinter.Items.Clear()
Dim ix As Integer = 0
Dim hitIx As Integer = 0
For Each ipn As String In Printing.PrinterSettings.InstalledPrinters
    If defaultPrinter = ipn Then
        hitIx = ix
    End If
    cmbPrinter.Items.Add(p)
    ix += 1
Next
cmbPrinter.SelectedIndex = hitIx

もう少しスマートなやり方が有りそう・・・。

タイトルとURLをコピーしました