C#WebBrowser不显示内容

时间:2011-11-17 16:04:57

标签: c# browser

我正在使用WebBrowser,当我尝试拨打.Navigate(some_local_html)时,我的浏览器上没有显示任何内容。如果我然后使用MessageBox.Show(),那么当显示消息时,我可以在浏览器中看到我的html。但当我关闭MessageBox时,html又丢失了。

我尝试过Try-catch,但没有错误。

我试图在webBrowser控件上设置默认网址,但也没有结果。我什么也看不见。

解决:

这不是一个线程本身,而是某种线程。我添加了下一个代码:

Stream stream = null;
webBrowser1.DocumentStream = stream;

忘记删除它...这是一个原因。 谢谢大家!

2 个答案:

答案 0 :(得分:1)

不确定这是否会有所帮助,但听起来有些东西在后台重新绘制,就像你把消息箱放了一样我确信它会在线程中休眠,所以除非它被采取行动,否则什么都不会发生,所以无论如何覆盖它会暂时停止。

如果您经常刷新或重新绘制可能导致问题的线程,请尝试在表单中添加一个按钮,执行thread.sleep(1000)以查看是否正确显示了您的浏览器一秒钟。

答案 1 :(得分:1)

了解调用导航和MessageBox函数的位置会很有帮助。我很快创建了一个测试,看看我是否可以产生类似的结果,但下面的代码完全符合预期。

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        this.webBrowser1.Navigate("http://www.google.com");
    }

    private void button1_Click(object sender, EventArgs e)
    {
        MessageBox.Show("Some Text");
    }
}