0

我有这个代码:

Private printDocument1 As New PrintDocument()
Private stringToPrint As String

Private Sub ReadFile()
    Dim docName As String = "print_doc.rtf"
    Dim docPath As String = fsPathPrintDoc
    printDocument1.DocumentName = docName
    Dim stream As New FileStream(docPath + docName, FileMode.Open)
    Try
        Dim reader As New StreamReader(stream)
        Try
            stringToPrint = reader.ReadToEnd()
        Finally
            reader.Dispose()
        End Try
    Finally
        stream.Dispose()
    End Try
End Sub

我使用以下方法进行打印:

ReadFile()
printDocument1.Print()

我想使用 VB.NET 打印一个 rtf 文件printdialog.show(),因为想要选择特定的打印机进行打印,但是我上面的代码我不知道如何嵌入printdialog这里。

这是必需的,因为我想使用使用网络的不同系统上可用的打印机打印该文件。现在所有这些可用的打印机都可以在打印对话框中使用,我想要的是简单地打印驱动器中的特定文件使用printdialog()

另外,我试图找到一种使用打印文件的可能性printdialogprintdocument但不幸的是失败了。

编辑:

我找到了http://msdn.microsoft.com/en-us/library/system.drawing.printing.printdocument.aspx但它不包括printdialog

4

1 回答 1

1

您将 PrintDocument 分配给PrintDialogs 文档属性,然后它将选定的打印机添加到您的文档中。然后您照常打印文档。

PrintDialog1.AllowSomePages = True 
PrintDialog1.ShowHelp = True 
PrintDialog1.Document = printDocument1 'Assign your Document here

Dim result As DialogResult = PrintDialog1.ShowDialog()

If (result = DialogResult.OK) Then
    printDocument1.Print()
End If 
于 2012-10-07T15:59:50.127 回答