【问题标题】:WPF WebBrowser-Control does not display contentWPF WebBrowser-Control 不显示内容
【发布时间】:2011-05-17 11:33:14
【问题描述】:

在我的 WPF 应用程序中,我使用 WebBrowser-Control 来显示 Web 内容。我用谷歌搜索测试它。在下面,首先是一些源代码:

<Canvas x:Name="LayoutRoot" Background="White">
       <WebBrowser x:Name="browser"
                            Width="494"
                            Height="293"
                            Canvas.Left="3"
                            Canvas.Top="162"/>

</Canvas>

public EventSide()
{
    InitializeComponent();
    browser.Navigate(new Uri("http://www.google.de/"));
}

现在取决于以下问题: WebBrowser 控件的内容完全是空的。我将鼠标移到 WebBrowser 控件上,在顶部进行更改,将鼠标光标移至文本光标,然后我得到一个名为 search 的工具提示。这是来自谷歌页面的搜索字段。这意味着可以通过我的 webbrowser 控件从 Web 获得信息,但显然无法显示。

在我的主窗口中,我将 AllowsTransparency-property 设置为“True”。如果我将其重置为“False”,则内容将显示在我的 Web 浏览器元素中。由于我需要单独的窗口设计,因此我依赖于 AllowsTransparency 属性。

有没有人遇到过同样的问题并提出了解决方案?

【问题讨论】:

    标签: c# wpf c#-4.0 wpf-controls


    【解决方案1】:

    我猜你调用navigation时没有加载WebBrowser控件,试试这个

    public EventSide()
    {
        InitializeComponent();
        browser.Loaded += delegate
        {
            browser.Navigate(new Uri("http://www.google.de/"));
        }
    }
    

    编辑

    请注意,WebBrowser 是旧式(我猜是 COM)控件,不支持样式、动画和 AllowTransparency...

    详情请见here

    如果你真的需要的话,我认为唯一的解决方案是使用像WPF 3D Chromium Browser 这样的第三部分浏览器

    希望对你有帮助

    【讨论】:

    • 感谢您的帖子。不幸的是,它没有帮助。我还尝试使用按钮处理程序在我的 WebBrowser 控件中加载新页面。即使这样也行不通。当我将 MainWindow 中的 AllowsTransparency-property 重置为“False”时,它会起作用吗?
    • 感谢您的帮助。您的样品运行。当我将窗口属性“AllowsTransparency”设置为 true 时,我遇到了同样的问题。内容不可见。
    • 哦,我现在明白了,我忘了说...没有 WebBrowser 控件不支持 AllowTransparency,因为它是旧样式控件...请参阅编辑的 psot
    • @Matapolo 标记为对您有帮助的回复帖子,否则以后没有人会回复您
    猜你喜欢
    • 2017-06-11
    • 2010-12-27
    • 2011-08-26
    • 2021-07-14
    • 1970-01-01
    • 2010-11-20
    • 2020-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多