XpfRichEditPrinter Class
Provides the functionality to implement your custom printing logic.
Namespace: DevExpress.XtraRichEdit.Printing
Assembly: DevExpress.Xpf.RichEdit.v23.1.dll
NuGet Package: DevExpress.Wpf.RichEdit
Declaration
Remarks
The XpfRichEditPrinter class provides two methods: Print, allowing you to print to the default printer; and PrintDialog which invokes the Print dialog.
You can create a XpfRichEditPrinter class descendant and implement you custom printing logic, as shown in the code snippet below:
Example
Imports System.Printing
Imports System.Windows
Imports System.Windows.Controls
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.Printing
Imports System.Windows.Documents
Imports System.Drawing.Printing
Public Class CustomXpfRichEditPrinter
Inherits XpfRichEditPrinter
Public Sub New(ByVal control As IRichEditControl)
MyBase.New(control)
End Sub
Public Sub PrintToMyPrinter()
Dim pDialog As New PrintDialog()
Dim enumerationFlags() As EnumeratedPrintQueueTypes = {EnumeratedPrintQueueTypes.Local, EnumeratedPrintQueueTypes.Connections}
Dim queues As PrintQueueCollection = New PrintServer().GetPrintQueues(enumerationFlags)
Dim localPrinterEnumerator As System.Collections.IEnumerator = queues.GetEnumerator()
Dim printQueue As PrintQueue = Nothing
If localPrinterEnumerator.MoveNext() Then
printQueue = CType(localPrinterEnumerator.Current, PrintQueue)
End If
If printQueue IsNot Nothing Then
pDialog.PrintQueue = printQueue
Dim document As FixedDocument = Me.CreateFixedDocument()
pDialog.PrintDocument(document.DocumentPaginator, String.Empty)
End If
End Sub
End Class
Inheritance
Object
DevExpress.XtraRichEdit.Layout.Export.RichEditPrinterBase
XpfRichEditPrinter
See Also