WPF:如何将一个弹出式内自动调整大小web浏览器?(WPF: How to auto-size W

2019-08-21 15:37发布

我有一个Popup一个WebBrowser内(参见下面的代码)。 web浏览器有MaxWidth = "800" 我想自动大小web浏览器到其内容的高度高度将其加载网站后,所以它不需要垂直滚动条。

我尝试设置Height = "Auto"MaxHeight = "5000" ,但我没有得到正确的结果。

你能帮助我该怎么办呢? 非常感谢你!

    <Popup Name="popup1" VerticalOffset="3">
        <Border BorderThickness="1">
            <DockPanel>
                <ScrollViewer MaxHeight="700" VerticalScrollBarVisibility="Auto">
                    <WebBrowser Name="wb1" MaxWidth="800"/>
                </ScrollViewer>
            </DockPanel>
        </Border>
    </Popup>

Answer 1:

这里是解决方案:

<Popup x:Name="Popup" Width="800">
    <Border BorderThickness="1">
        <WebBrowser
            x:Name="WebBrowser"
            LoadCompleted="WebBrowser_OnLoadCompleted"
            ... />
    </Border>
</Popup>

处理器:

private void WebBrowser_OnLoadCompleted(object sender, NavigationEventArgs e) {
    this.Popup.Height = (int) (this.WebBrowser.Document as dynamic).body.scrollHeight + 20;
}


文章来源: WPF: How to auto-size WebBrowser inside a Popup?