PDFTron «Значение не попадает в ожидаемый диапазон». Исключение, возникающее при загрузке pdf

#c# #pdf #uwp #document #pdftron

Вопрос:

Я получаю исключение {"Value does not fall within the expected range."} , когда пытаюсь добавить новый pdf-документ в представление. И в представлении есть два документа pdf для загрузки. Один загружается, а другой выдает это исключение при загрузке.

Вот код на c#.

                        (this.DataContext as ViewerPageViewModel).Activate();
                       (this.DataContext as ViewerPageViewModel).OpenDoc(pdfDoc);
                       PDFViewCtrlBorder.Child = (this.DataContext as ViewerPageViewModel).PDFViewCtrl;
 

Вот код XAML.

                                 <Grid
                                x:Name="PaperGrid"
                                Grid.Row="0"
                                Grid.RowSpan="2"
                                Background="{StaticResource WhiteBackgroundBrush}"
                                Visibility="Collapsed">
                                <Border x:Name="PDFViewCtrlBorder" >
                                    <Grid>
                                        <Border Child="{Binding}" />
                                    </Grid>
                                </Border>
                                </Grid>
 

Ответ №1:

Это довольно распространенное исключение при установке UIElement свойства с недопустимым значением.

Не могли бы вы, пожалуйста, поделиться дополнительной информацией об исключении и, возможно, образцом проекта, чтобы я мог лучше его понять?

Кроме того, если вы пытаетесь открыть 2 PDF-файла в одном и том же представлении, я бы обязательно правильно использовал привязку к обоим PDFViewCtrl свойствам в вашей модели представления и не пытался установить их в Load событии или коде.

 <Border x:Name="PDFViewCtrlBorder" >
     <Grid>
           <Border Child="{Binding PDFViewCtrl}" />
     </Grid>
</Border>
 

Вы также можете взглянуть на наш репозиторий образцов UWP, в котором есть PDFCompare образец проекта, загружающий 2 PDF-файла в представление
https://github.com/PDFTron/pdftron-uwp-samples

Вы также можете связаться с нами по https://www.pdftron.com/company/contact-us/. Оттуда мы можем предоставить вам индивидуальную поддержку и помочь вам с решением для вашего варианта использования.

С уважением, Робсон