←Select platform

CurrentPageNumber Property

Summary

Gets the current page number.

Syntax
C#
C++/CLI
public virtual int CurrentPageNumber {get;} 
public: 
   virtual property int CurrentPageNumber 
   { 
      int get() 
   } 

Property Value

The 1-based number of the current page.

Remarks

The CurrentPageNumber is the page with the largest area currently visible in the View.

This is obtained by calling View.ImageViewer.GetLargestVisibleItemIndex.

The value changes when the user scrolls the view or zooms in or out and should not be saved. Instead, use CurrentPageNumber every time the "largest visible page" is needed. For example, the application can have a "Find text in this page" or "Find text in the whole document" operations. When the user runs the "Find text in this page", they are referring to the largest page in the viewer, and the application should call CurrentPageNumber to get this value when the action is invoked.

CurrentPageNumber is used in end-user applications as well as internally with many Commands. The value will update automatically as the user scrolls through and interacts with the View. The CurrentPageNumber algorithm is "smart" and will generally either show one of the following states:

To tie CurrentPageNumber with the current View's ImageViewer.ActiveItem and not update when the user scrolls the view, set the value of SmartCurrentPageNumber to false.

Users can listen for changes to CurrentPageNumber (and cancel incoming changes) by listening for the DocumentViewerOperation.CurrentPageNumberChanged operation. CurrentPageNumberChangeData and CurrentPageNumberChangedCause will be available to inspect the changing page number and its cause.

Example

Start with the example created in DocumentViewer, remove all the code in the Example function and add the code below.

When the user clicks the Example button and then the user changes the page number, the change is intercepted and the current page is shown in the label.

C#
using Leadtools; 
using Leadtools.Controls; 
using Leadtools.Document; 
using Leadtools.Document.Viewer; 
using Leadtools.Codecs; 
using Leadtools.Caching; 
using Leadtools.Annotations.Engine; 
using Leadtools.Ocr; 
 
 
// Disable the example button, this should only run once 
exampleButton.Enabled = false; 
_documentViewer.Operation += (sender, e) => 
{ 
   if (e.Operation == DocumentViewerOperation.GotoPage && e.IsPostOperation) 
   { 
      var pageNumber = _documentViewer.CurrentPageNumber; 
      var infoLabel = this.Controls.Find("infoLabel", true)[0]; 
      infoLabel.Text = "Current page number is " + pageNumber; 
   } 
}; 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Viewer.WinForms Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.