有没有办法动态创建和处理Webbrowser控件?
我有这个使用Webbrowser控件进行自动浏览的应用程序。 我需要想出一种方法来自动关闭浏览器(dispose),然后创建另一个实际工作的实例。
这是我到目前为止的一些代码。
this.webBrowser2 = new System.Windows.Forms.WebBrowser(); this.webBrowser2.Dock = System.Windows.Forms.DockStyle.Bottom; this.webBrowser2.Location = new System.Drawing.Point(0, 34); this.webBrowser2.MinimumSize = new System.Drawing.Size(20, 20); this.webBrowser2.Name = "webBrowser2"; this.webBrowser2.ScriptErrorsSuppressed = true; this.webBrowser2.Size = new System.Drawing.Size(616, 447); this.webBrowser2.TabIndex = 1;
所以我在考虑是否处理了webbrower实例。
webBrowser2.dispose();
然后创建webbrowser对象的新实例。
WebBrowser w = new WebBroswer(); w.Navigate(url);
不幸的是,这不起作用。 浏览器的新实例未显示,并且已处置的浏览器对象在Windows窗体中保持冻结状态。
有什么我做错了吗?
谢谢
您需要从窗体的Controls属性中添加和删除WebBrowsers:
this.Controls.Remove(webBrowser2); this.Controls.Add(w);
如果你遇到困难,那么这篇文章也有一个几乎完整的添加和删除控件的演练(它没有包含很多关于事件的内容)。