【问题标题】:WebBrowser in a StackPanel does not expand to its content size in WPFStackPanel 中的 WebBrowser 不会扩展到其在 WPF 中的内容大小
【发布时间】:2020-05-09 16:17:49
【问题描述】:

我必须在一个窗口中显示多个 HTML 内容。这些数据以字符串形式出现。每个字符串代表一个 HTML 文件数据。

我正在使用 webbrowser 控件和堆栈面板布局将它们显示在单个窗口上。


    <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);
            }

问题:网络浏览器未按其内容大小呈现。
无论实际内容大小如何,所有网络浏览器都在堆栈面板中占用相同数量的空间。

Current Output Screenshot 第 2 和第 3 网络浏览器没有占用所需的空间来呈现内容。

Webbrowser 控件似乎没有向堆栈面板提供有关其内容大小的正确信息。

鉴于 Web 浏览器会按照其内容大小呈现,我想避免在 Web 浏览器级别使用滚动条。

非常感谢任何帮助。谢谢。

【问题讨论】:

    标签: c# wpf


    【解决方案1】:

    WebBrowser 控件不支持此功能。但是,您可以手动获取内容大小和调整大小控件,如以下线程所示:https://stackoverflow.com/a/40795036/12797700

    【讨论】:

      猜你喜欢
      • 2011-08-26
      • 2015-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多