private void ElementDetector_ItemClick(object sender, ItemClickEventArgs e) { ElementDetector.Alignment = BarItemLinkAlignment.Default; TabPageWithWebBrowser tabPage = this.tabPageControl.SelectedTabPage as TabPageWithWebBrowser; ElementDetectorBase detector = null; if (this.ribbon.SelectedPage.Name == "cocsite") { detector = new COCElementDetector(tabPage.WebBrowser1, new string[] { "id", "name", "value", "onclick", "title", "ondblclick" }); } else { detector = new GHElementDetector(tabPage.WebBrowser1, new string[] { "id", "name", "value", "onclick" }); } detector.DetectAndSave(); }
public object Open(string url, string windowName, string feature, bool isModalWindow, mshtml.IHTMLWindow2 window) { XtraTabControl tabControl = _webPage.Parent as XtraTabControl; TabPageWithWebBrowser lastTab = tabControl.SelectedTabPage as TabPageWithWebBrowser; TabPageWithWebBrowser tabPage = new TabPageWithWebBrowser(window, isModalWindow); Uri uri = new Uri(new Uri(window.location.href), url); if (tabControl != null) { tabControl.TabPages.Add(tabPage); tabPage.FillManager = lastTab == null ? null : lastTab.FillManager; tabPage.WebBrowser1.Navigate(uri); tabControl.SelectedTabPage = tabPage; } if (tabPage.FillManager != null) { tabPage.FillManager.AttachWebBrowser(tabPage.WebBrowser1); } if (isModalWindow) { // 模拟打开模态窗口 object result = null; while (tabPage.WebBrowser1 != null && tabPage.WebBrowser1.IsDisposed == false) { Application.DoEvents(); } result = tabPage.DialogResult; return(result); } else { if (tabPage.FillManager != null) { tabPage.FillManager.FireNewWindowEvent(uri); } while (tabPage.WebBrowser1.Document == null) { Application.DoEvents(); } return(tabPage.WebBrowser1.Document.Window.DomWindow); } }
public WebPageCloseHandler(TabPageWithWebBrowser webPage) { _webPage = webPage; }