IDocumentPaginatorSource Interface

Definition

Defines the source object that performs actual content pagination.

public interface class IDocumentPaginatorSource
public interface IDocumentPaginatorSource
type IDocumentPaginatorSource = interface
Public Interface IDocumentPaginatorSource
Derived

Examples

The following example shows use of the IDocumentPaginatorSource interface.

// ------------------------- LoadDocumentViewer -----------------------
/// <summary>
///   Loads content from a file to a DocumentViewer control.</summary>
/// <param name="xpsFilename">
///   The path and name of the XPS file to
///   load to the DocumentViewer control.</param>
/// <remarks>
///   Exception handling should be added if the xpsFilename may not be
///   valid or if the FixedDocumentSequence contained in the file is
///   incorrect.  (In this sample the files are hardcoded.)</remarks>
private void LoadDocumentViewer(string xpsFilename)
{
    // Save a reference to the currently open XPS package.
    XpsDocument oldXpsPackage = _xpsPackage;

    // Open the package for the new XPS document.
    _xpsPackage = new XpsDocument(xpsFilename,
        FileAccess.Read, CompressionOption.NotCompressed);

    // Get the FixedDocumentSequence from the package.
    FixedDocumentSequence fixedDocumentSequence =
        _xpsPackage.GetFixedDocumentSequence();

    // Set the new FixedDocumentSequence as
    // the DocumentViewer's paginator source.
    docViewer.Document =
        fixedDocumentSequence as IDocumentPaginatorSource;

    // If there was an old XPS package, close it now that
    // DocumentViewer no longer needs to access it.
    if (oldXpsPackage != null)
        oldXpsPackage.Close();

    // Leave the new _xpsPackage open for DocumentViewer
    // to access additional required resources.
}// end:LoadDocumentViewer()
' ------------------------- LoadDocumentViewer -----------------------
''' <summary>
'''   Loads content from a file to a DocumentViewer control.</summary>
''' <param name="xpsFilename">
'''   The path and name of the XPS file to
'''   load to the DocumentViewer control.</param>
''' <remarks>
'''   Exception handling should be added if the xpsFilename may not be
'''   valid or if the FixedDocumentSequence contained in the file is
'''   incorrect.  (In this sample the files are hardcoded.)</remarks>
Private Sub LoadDocumentViewer(ByVal xpsFilename As String)
    ' Save a reference to the currently open XPS package.
    Dim oldXpsPackage As XpsDocument = _xpsPackage

    ' Open the package for the new XPS document.
    _xpsPackage = New XpsDocument(xpsFilename, FileAccess.Read, CompressionOption.NotCompressed)

    ' Get the FixedDocumentSequence from the package.
    Dim fixedDocumentSequence As FixedDocumentSequence = _xpsPackage.GetFixedDocumentSequence()

    ' Set the new FixedDocumentSequence as
    ' the DocumentViewer's paginator source.
    docViewer.Document = TryCast(fixedDocumentSequence, IDocumentPaginatorSource)

    ' If there was an old XPS package, close it now that
    ' DocumentViewer no longer needs to access it.
    If oldXpsPackage IsNot Nothing Then
        oldXpsPackage.Close()
    End If

    ' Leave the new _xpsPackage open for DocumentViewer
    ' to access additional required resources.

End Sub

Properties

DocumentPaginator

When implemented in a derived class, gets the object that performs content pagination.

Applies to