用Visual C#打造多页面网页浏览器,用Visual C#打造多页面网页浏览器
【 tulaoshi.com - ASP.NET 】
一、简介private void axWebBrowser1_NewWindow2(object sender, AxSHDocVw.DWebBrowserEvents2_NewWindow2Event e)
{
AxSHDocVw.AxWebBrowser _axWebBrowser = CreateNewWebBrowser();
e.ppDisp = _axWebBrowser.Application;
_axWebBrowser.RegisterAsBrowser = true;
}
private AxSHDocVw.AxWebBrowser CreateNewWebBrowser()
{
AxSHDocVw.AxWebBrowser _axWebBrowser = new AxSHDocVw.AxWebBrowser();
_axWebBrowser.Tag = new HE_WebBrowserTag();
TabPage _TabPage = new TabPage();
_TabPage.Controls.Add(_axWebBrowser);
_axWebBrowser.Dock = DockStyle.Fill;
_axWebBrowser.BeforeNavigate2 += new AxSHDocVw.DWebBrowserEvents2_BeforeNavigate2EventHandler(this.axWebBrowser1_BeforeNavigate2);
_axWebBrowser.DocumentComplete += new AxSHDocVw.DWebBrowserEvents2_DocumentCompleteEventHandler(this.axWebBrowser1_DocumentComplete);
_axWebBrowser.NavigateComplete2 += new AxSHDocVw.DWebBrowserEvents2_NavigateComplete2EventHandler(this.axWebBrowser1_NavigateComplete2);
_axWebBrowser.NavigateError += new AxSHDocVw.DWebBrowserEvents2_NavigateErrorEventHandler(this.axWebBrowser1_NavigateError);
_axWebBrowser.NewWindow2 += new AxSHDocVw.DWebBrowserEvents2_NewWindow2EventHandler(this.axWebBrowser1_NewWindow2);
_axWebBrowser.ProgressChange += new AxSHDocVw.DWebBrowserEvents2_ProgressChangeEventHandler(this.axWebBrowser1_ProgressChange);
_axWebBrowser.StatusTextChange += new AxSHDocVw.DWebBrowserEvents2_StatusTextChangeEventHandler(this.axWebBrowser1_StatusTextChange);
_axWebBrowser.TitleChange += new AxSHDocVw.DWebBrowserEvents2_TitleChangeEventHandler(this.axWebBrowser1_TitleChange);
_axWebBrowser.CommandStateChange += new AxSHDocVw.DWebBrowserEvents2_CommandStateChangeEventHandler(this.axWebBrowser1_CommandStateChange);[next]
tabControl1.TabPages.Add(_TabPage);
tabControl1.SelectedTab = _TabPage;
return _axWebBrowser;
}
public class HE_WebBrowserTag
{
public int _TabIndex = 0;
public bool _CanBack = false;
public bool _CanForward = false;
}
三、实现“查找”、“查看页面源文件”、“选项”对话框等功能
注意 本例程中使用了一个未公开的GUID,其在将来的系统中可以发生变更。
1、定义 IOleCommandTarget 接口
为定义一个.NET接口以获得关于一个COM接口的参考,请遵从下列步骤:
1) 赋予.NET接口相应的COM接口的GUID值;
2) 包含对接口中所有方法的
来源:http://www.tulaoshi.com/n/20160129/1490275.html
看过《用Visual C#打造多页面网页浏览器》的人还看了以下文章 更多>>