Skip to main content
A newer version of this page is available. .

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

public class XpfRichEditPrinter :
    RichEditPrinterBase

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

View 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