Back to Devexpress

How to: Determine the Page Number of a Clicked PDF Page

windowsforms-16040-controls-and-libraries-pdf-viewer-examples-interactivity-how-to-determine-the-page-number-of-a-clicked-pdf-page.md

latest2.1 KB
Original Source

How to: Determine the Page Number of a Clicked PDF Page

  • Nov 13, 2018

This example shows how to determine what page was clicked in a document.

csharp
using System.IO;
using System.Reflection;
using System.Windows.Forms;
using DevExpress.Pdf;
using DevExpress.XtraBars.Ribbon;

namespace PageHitTest
{

    public partial class Form1 : RibbonForm
    {
        public Form1()
        {
            InitializeComponent();

            Stream stream = GetResourceStream("PageHitTest.demo.pdf");
            pdfViewer.LoadDocument(stream);
        }

        static Stream GetResourceStream(string resourceName)
        {
            return Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName);
        }

        void pdfViewer_MouseClick(object sender, MouseEventArgs e)
        {
            PdfDocumentPosition position = pdfViewer.GetDocumentPosition(e.Location, true);
            MessageBox.Show(string.Format("You clicked on page {0}", position.PageNumber));
        }
    }
}
vb
Imports System.IO
Imports System.Reflection
Imports System.Windows.Forms
Imports DevExpress.Pdf
Imports DevExpress.XtraBars.Ribbon

Namespace PageHitTest

    Partial Public Class Form1
        Inherits RibbonForm

        Public Sub New()
            InitializeComponent()

            Dim stream As Stream = GetResourceStream("PageHitTest.demo.pdf")
            pdfViewer.LoadDocument(stream)
        End Sub

        Private Shared Function GetResourceStream(ByVal resourceName As String) As Stream
            Return System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(resourceName)
        End Function

        Private Sub pdfViewer_MouseClick(ByVal sender As Object, ByVal e As MouseEventArgs) Handles pdfViewer.MouseClick
            Dim position As PdfDocumentPosition = pdfViewer.GetDocumentPosition(e.Location, True)
            MessageBox.Show(String.Format("You clicked on page {0}", position.PageNumber))
        End Sub
    End Class
End Namespace