用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#打造多页面网页浏览器》的人还看了以下文章 更多>>