我正在使用WebBrowser,当我尝试拨打.Navigate(some_local_html)
时,我的浏览器上没有显示任何内容。如果我然后使用MessageBox.Show()
,那么当显示消息时,我可以在浏览器中看到我的html。但当我关闭MessageBox
时,html又丢失了。
我尝试过Try-catch,但没有错误。
我试图在webBrowser
控件上设置默认网址,但也没有结果。我什么也看不见。
解决:
这不是一个线程本身,而是某种线程。我添加了下一个代码:
Stream stream = null;
webBrowser1.DocumentStream = stream;
忘记删除它...这是一个原因。 谢谢大家!
答案 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");
}
}