为什么我不能在运行时导航到webbrowser控件中的页面?

时间:2010-08-02 19:01:38

标签: c# browser webbrowser-control

当我做这样的事情时

webBrowser1 = new WebBrowser();  
webBrowser1.Url = new Uri("http://google.com");  
webBrowser1.Navigate("http://google.com");  
我得到的只是一个空白的窗口。 当我执行第二个语句后,我逐步执行此webBrowser1.Url stay = null。那是为什么?

如果我在打开表单时正确加载网站之前设置了url属性。 那为什么我不能动态加载网站呢?

3 个答案:

答案 0 :(得分:2)

如果您在设计时添加了Web浏览器控件,则无需在代码中实例化它(InitializeComponent会为您处理)。

删除此行:

webBrowser1 = new WebBrowser();

......它应该适合你。

如果要在代码中声明控件,则必须将其添加到父窗体的可视树中:

this.Controls.Add(webBrowser1);

其中“this”指的是你的表格。

答案 1 :(得分:1)

我在构造函数中有它,当它移出它时它工作了。我现在在表单加载后调用一个函数来设置控件

答案 2 :(得分:0)

WebBrowser异步工作,因此您必须订阅WebBrowser.Navigated并等到它将导航到给定的URL并呈现生成的HTML