Provides an abstract base class that supports automatic background pagination and tracking content positions across repaginations in addition to the methods and properties of its own base class.
Assembly: PresentationCore (in PresentationCore.dll)
Gets or sets a value indicating whether pagination is performed automatically in the background in response to certain events, such as a change in page size.
When overridden in a derived class, gets a count of the number of pages currently formatted(Inherited from DocumentPaginator.)
When overridden in a derived class, gets or sets the suggested width and height of each page.(Inherited from DocumentPaginator.)
When overridden in a derived class, returns the element being paginated.(Inherited from DocumentPaginator.)
Occurs when GetPageNumberAsync has completed.
Occurs when the document content is changed.(Inherited from DocumentPaginator.)
Occurs when all document content has been paginated.
Occurs when one or more content pages have been paginated.
By default, a IsBackgroundPaginationEnabled is true, which is the default setting).will automatically pre-paginate content in the background (this process begins when
The PaginationProgress event occurs upon completion of pagination (or repagination) of one or more pages, such as in the following situations:
PaginationProgress events occur as content is paginated in the background. Depending on the implementation, the event may occur upon paginating one or multiple pages (PaginationProgressEventArgs specifies which pages have been paginated).
Calls to GetPage or GetPageAsync may cause an PaginationProgress event to occur if the page specified has not been paginated. For example, if background pagination is enabled (IsBackgroundPaginationEnabled = true) but pagination has only been completed up to the third page, a call of GetPage with an argument of 6 will cause pages four, five, six, and seven to be paginated. Upon completion, a PaginationProgress event will be raised with PaginationProgressEventArgs settings of Start = 4 and Count = 4.
With background pagination enabled (IsBackgroundPaginationEnabled = true), a change in PageSize on flow-format content, such as a FlowDocument, may cause repagination and associated PaginationProgress events. Note that PageSize has no effect in repagination on fixed-format content, such as FixedDocument, where the visual page size does not affect the layout.
A PaginationCompleted event also occurs when background pagination is disabled. For example, if there is only one page of content and IsBackgroundPaginationEnabled = false), calling GetPage with an argument of 0 will result in two events:
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.