AnnotationDocumentPaginator Class

AnnotationDocumentPaginator Class

 

Provides a DocumentPaginator for printing a document together with its associated annotations.

Namespace:   System.Windows.Annotations
Assembly:  PresentationFramework (in PresentationFramework.dll)

System.Object
  System.Windows.Documents.DocumentPaginator
    System.Windows.Annotations.AnnotationDocumentPaginator

public sealed class AnnotationDocumentPaginator : DocumentPaginator

NameDescription
System_CAPS_pubmethodAnnotationDocumentPaginator(DocumentPaginator, AnnotationStore)

Initializes a new instance of the AnnotationDocumentPaginator class based on a specified DocumentPaginator and AnnotationStore.

System_CAPS_pubmethodAnnotationDocumentPaginator(DocumentPaginator, AnnotationStore, FlowDirection)

Initializes a new instance of the AnnotationDocumentPaginator class based on a specified DocumentPaginator, AnnotationStore, and text FlowDirection.

System_CAPS_pubmethodAnnotationDocumentPaginator(DocumentPaginator, Stream)

Initializes a new instance of the AnnotationDocumentPaginator class based on a specified DocumentPaginator and annotation storage Stream.

System_CAPS_pubmethodAnnotationDocumentPaginator(DocumentPaginator, Stream, FlowDirection)

Initializes a new instance of the AnnotationDocumentPaginator class based on a specified DocumentPaginator, annotation storage Stream, and text FlowDirection.

NameDescription
System_CAPS_pubpropertyIsPageCountValid

Gets a value that indicates whether PageCount is the total number of pages.(Overrides DocumentPaginator.IsPageCountValid.)

System_CAPS_pubpropertyPageCount

Gets a value that indicates the number of pages currently formatted.(Overrides DocumentPaginator.PageCount.)

System_CAPS_pubpropertyPageSize

Gets or sets the suggested width and height of each page.(Overrides DocumentPaginator.PageSize.)

System_CAPS_pubpropertySource

Gets the source document that is being paginated.(Overrides DocumentPaginator.Source.)

NameDescription
System_CAPS_pubmethodCancelAsync(Object)

Cancels all asynchronous operations initiated with a given userState object.(Overrides DocumentPaginator.CancelAsync(Object).)

System_CAPS_pubmethodComputePageCount()

Forces a pagination of the content, updates PageCount with the new total, and sets IsPageCountValid to true.(Overrides DocumentPaginator.ComputePageCount().)

System_CAPS_pubmethodComputePageCountAsync()

Asynchronously, forces a pagination of the content, updates PageCount with the new total, and sets IsPageCountValid to true.(Inherited from DocumentPaginator.)

System_CAPS_pubmethodComputePageCountAsync(Object)

Starts an asynchronous pagination of the content, updates PageCount with the new total, and sets IsPageCountValid to true when it is finished.(Overrides DocumentPaginator.ComputePageCountAsync(Object).)

System_CAPS_pubmethodEquals(Object)

Determines whether the specified object is equal to the current object.(Inherited from Object.)

System_CAPS_pubmethodGetHashCode()

Serves as the default hash function. (Inherited from Object.)

System_CAPS_pubmethodGetPage(Int32)

Returns a DocumentPage together with associated user-annotations for a specified page number.(Overrides DocumentPaginator.GetPage(Int32).)

System_CAPS_pubmethodGetPageAsync(Int32)

Asynchronously returns (through the GetPageCompleted event) the DocumentPage for the specified page number.(Inherited from DocumentPaginator.)

System_CAPS_pubmethodGetPageAsync(Int32, Object)

asynchronously returns a DocumentPage together with associated user-annotations for a specified page number.(Overrides DocumentPaginator.GetPageAsync(Int32, Object).)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

NameDescription
System_CAPS_pubeventComputePageCountCompleted

Occurs when a ComputePageCountAsync operation has finished. (Inherited from DocumentPaginator.)

System_CAPS_pubeventGetPageCompleted

Occurs when GetPageAsync has completed.(Inherited from DocumentPaginator.)

System_CAPS_pubeventPagesChanged

Occurs when the document content is changed.(Inherited from DocumentPaginator.)

The AnnotationDocumentPaginator class wraps the DocumentPaginator specified to the AnnotationDocumentPaginator constructor to add the user annotations to the pages for printing.

The following example shows use of the AnnotationDocumentPaginator class.

PrintDialog prntDialog = new PrintDialog();
if ((bool)prntDialog.ShowDialog())
{
    // XpsDocumentWriter.Write() may change the current
    // directory to "My Documents" or another user selected
    // directory for storing the print document.  Save the
    // current directory and restore it after calling Write().
    string docDir = Directory.GetCurrentDirectory();

    // Create and XpsDocumentWriter for the selected printer.
    XpsDocumentWriter xdw = PrintQueue.CreateXpsDocumentWriter(
                                        prntDialog.PrintQueue);

    // Print the document with annotations.
    try
    {
        xdw.Write(_annotHelper.GetAnnotationDocumentPaginator(
            _xpsDocument.GetFixedDocumentSequence()));
    }
    catch (PrintingCanceledException)
    {
        // If in the PrintDialog the user chooses a file-based
        // output, such as the "MS Office Document Image Writer",
        // the user confirms or specifies the actual output
        // filename when the xdw.write operation executes.
        // If the user clicks "Cancel" in the filename
        // dialog a PrintingCanceledException is thrown
        // which we catch here and ignore.
        // MessageBox.Show("Print output cancelled");
    }

    // Restore the original document directory to "current".
    Directory.SetCurrentDirectory(docDir);
}
// ------------------ GetAnnotationDocumentPaginator ------------------
/// <summary>
///   Returns a paginator for printing annotations.</summary>
/// <param name="fds">
///   The FixedDocumentSequence containing
///   the annotations to print.</param>
/// <returns>
///   An paginator for printing the document's annotations.</returns>
public AnnotationDocumentPaginator GetAnnotationDocumentPaginator(
                                            FixedDocumentSequence fds)
{
    return new AnnotationDocumentPaginator(
                   fds.DocumentPaginator, _annotService.Store);
}

.NET Framework
Available since 3.0

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show:
© 2016 Microsoft