WebBrowser в StackPanel не расширяется до своего размера содержимого в WPF - PullRequest
0 голосов
/ 09 мая 2020

Мне нужно отображать несколько HTML содержимого в одном окне. Эти данные представлены в виде строк. Каждая строка представляет собой HTML данные файла.

Я использую элемент управления веб-браузером и макет панели стека для отображения их в одном окне.


    <Grid >
                <ScrollViewer  VerticalScrollBarVisibility="Auto">
                            <StackPanel Background="YellowGreen">
                                <WebBrowser Margin="5" Loaded="WebBrowser_Loaded"/>
                                <WebBrowser Margin="5" Loaded="WebBrowser_Loaded" />
                                <WebBrowser Margin="5" Loaded="WebBrowser_Loaded" />
                            </StackPanel>
                        </ScrollViewer>


    private void WebBrowser_Loaded(object sender, RoutedEventArgs e)
            {
                WebBrowser web = sender as WebBrowser;
                web.NavigateToString(VM.HtmlContent);
            }

Проблема: веб-браузер не отображается в соответствии с размером содержимого.
Независимо от фактического размера содержимого, все веб-браузеры занимают одинаковое количество места на панели стека.

Скриншот текущего вывода Веб-браузеры 2-й и 3-й не заняли необходимое количество места для рендеринга содержимого.

Кажется, что элемент управления Webbrowser не передает правильную информацию о размере своего содержимого на панель стека.

Учитывая, что веб-браузеры обрабатываются в соответствии с размером содержимого, я бы хотел избежать полосы прокрутки на уровне веб-браузера.

Любая помощь приветствуется. Спасибо.

1 Ответ

0 голосов
/ 09 мая 2020

Элемент управления WebBrowser не поддерживает эту функцию. Однако вы можете получить размер содержимого и изменить размер элементов управления вручную, как показано в этой цепочке: { ссылка }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...