Приведите AcroPDF к элементам управления для отображения в WindowsFormsHost - PullRequest
0 голосов
/ 22 января 2020

У меня есть программа WPF, в которую я хотел бы встроить средство просмотра PDF в Winforms, AcroPDF. У меня есть сетка в XAML, к которой я добавляю:

<Border HorizontalAlignment="Stretch" Grid.Row="5" Grid.RowSpan="4" Grid.Column="4" Margin="4,0" Name="APBorder">
    <Grid Name="APGrid" Loaded="APGrid_Loaded"/>
</Border>

И в коде я создаю WindowsFormsHost и PDF, устанавливаю дочерний элемент хоста и добавляю хост в Grid :

private void APGrid_Loaded(object sender, RoutedEventArgs e)
{
    System.Windows.Forms.Integration.WindowsFormsHost host =
        new System.Windows.Forms.Integration.WindowsFormsHost();
    AcroPDFLib.AcroPDF acroPDF = new AcroPDFLib.AcroPDF();
    test.LoadFile(@"C:\Users\Me\MyFile.pdf");
    host.Child = acroPDF;
    this.APGrid.Children.Add(host);
}

Однако я не могу добавить это, поскольку AcroPDF не является элементом управления, и я не могу разыграть без cra * sh. Я попытался заменить сетку непосредственно на WindowsFormsHost, но это столкнулось с той же проблемой.

Как я могу получить этот PDF для отображения? Я начал с использования ContentDisplay / WebBrowser из WPF, но это привело к целому ряду ошибок согласно этому вопросу StackOverflow .

...