예제 #1
0
        private async void Page_Loaded(object sender, RoutedEventArgs e)
        {
            if (File != null)
            {
                var pdfDocument = await PdfDocument.LoadFromFileAsync(File);

                var pageCount = pdfDocument.PageCount;
                NumberBoxPageNumber.Maximum = pageCount;

                if (pageCount == 1)
                {
                    await this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { LoadingControl.IsLoading = true; });
                }

                for (uint i = 0; i < pdfDocument.PageCount; i++)
                {
                    var page = pdfDocument.GetPage(i);
                    if (page != null)
                    {
                        var pdfPageControl = new PdfViewerPageControl();
                        await pdfPageControl.Load(page);

                        ViewerPageViewModel.Pages.Add(pdfPageControl);
                    }
                }

                if (pageCount == 1)
                {
                    await this.Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () => { LoadingControl.IsLoading = false; });
                }
                PdfLoaded = true;
            }
        }
예제 #2
0
        public PdfViewerPageControl GetCurrentPage()
        {
            double val = double.MaxValue;
            PdfViewerPageControl result = null;

            foreach (var page in _pages)
            {
                if (page.PageLoaded && page.DistanceY < val)
                {
                    val    = page.DistanceY;
                    result = page;
                }
            }

            CurrentPage = result;
            return(result);
        }
예제 #3
0
        public PdfViewerPageControl GetCurrentPage()
        {
            double val = double.MaxValue;
            PdfViewerPageControl result = null;

            foreach (var items in _items)
            {
                foreach (var viewModel in items.Items)
                {
                    var page = viewModel.CurrentPage;
                    if (page != null)
                    {
                        if (page.PageLoaded && page.DistanceY < val)
                        {
                            val    = page.DistanceY;
                            result = page;
                        }
                    }
                }
            }

            CurrentPage = result;
            return(result);
        }
예제 #4
0
 public void Add(PdfViewerPageControl pageControl)
 {
 }