public WBHelper(bool ajax) { IsForAjaxUse = ajax; if (AppSetting.UserSetting.Get("不限制浏览器数量", false)) { if (wbQueue.Count == 0) { container.InvokeAction(() => { this.WB = new ExtendedWinFormsWebBrowser(); container.Controls.Add(this.WB); this.WB.ScriptErrorsSuppressed = true; SubscribEvents(); if (ajax) { this.WB.Navigate(wbInitUrl); Task.Delay(50); } }); return; } } this.WB = ajax ? ajaxWbQueue.Dequeue() : wbQueue.Dequeue(); SubscribEvents(); }
protected override void EnterModeInternal(ExtendedWinFormsWebBrowser webBrowser) { webBrowser.Dock = DockStyle.Fill; webBrowser.ScrollBarsEnabled = false; webBrowser.ScriptErrorsSuppressed = true; //WB.IsWebBrowserContextMenuEnabled = false; }
public WBHelper(bool ajax) { IsForAjaxUse = ajax; if (AppSetting.UserSetting.Get("不限制浏览器数量", false)) { if (wbQueue.Count == 0) { container.InvokeAction(async() => { this.WB = new ExtendedWinFormsWebBrowser(); container.Controls.Add(this.WB); this.WB.ScriptErrorsSuppressed = true; SubscribEvents(); if (ajax) { await SynchronousLoadDocument(wbInitUrl); } IsNew = true; }); return; } } this.WB = ajax ? ajaxWbQueue.Dequeue() : wbQueue.Dequeue(); SubscribEvents(); }
public static ItemBizEventArgs FromWebBrowser(ExtendedWinFormsWebBrowser webBrowser) { return(null); //var args = new ItemBizEventArgs(); //args.webBrowser = webBrowser; //var url = webBrowser.Url.ToString(); //args.UrlParameters["type"] = UrlHelper.GetIntValue(url, "type"); //args.UrlParameters["keyword"] = UrlHelper.GetStringValue(url, "keyword"); //args.UrlParameters["category"] = UrlHelper.GetIntValue(url, "category"); //args.UrlParameters["supplier"] = UrlHelper.GetIntValue(url, "supplier"); //args.UrlParameters["promoted"] = UrlHelper.GetIntValue(url, "promoted"); //args.UrlParameters["order"] = UrlHelper.GetIntValue(url, "order"); //args.UrlParameters["desc"] = UrlHelper.GetIntValue(url, "desc"); //args.UrlParameters["page"] = UrlHelper.GetIntValue(url, "page"); //args.UrlParameters["size"] = UrlHelper.GetIntValue(url, "size"); //var tables = webBrowser.Document.All.JQuerySelect("table.stock-table"); //var hiddens = webBrowser.Document.Body.JQuerySelect("input[type=hidden]"); //foreach (var item in hiddens) //{ // var name = string.IsNullOrEmpty(item.Name) ? item.Id : item.Name; // args.HiddenInputValues[name] = item.GetAttribute("value"); //} //if (tables.Any()) //{ // //args.TableEntity = new TableEntity(tables[0]); //} //return args; }
/// <summary> /// 开个新的浏览器 /// </summary> public WBHelper() { container.InvokeAction(() => { this.WB = new ExtendedWinFormsWebBrowser(); container.Controls.Add(this.WB); this.WB.ScriptErrorsSuppressed = true; SubscribEvents(); IsNew = true; }); }
/// <summary> /// 进入该模式 /// </summary> public void Enter(ExtendedWinFormsWebBrowser webBrowser) { webBrowser.Tag = this; webBrowser.ProgressChanged += WB_ProgressChanged; webBrowser.Navigating += WebBrowser_Navigating; webBrowser.NewWindow += WebBrowser_NewWindow; webBrowser.DocumentCompleted += WebBrowser_DocumentCompleted; webBrowser.Navigated += WebBrowser_Navigated; this.EnterModeInternal(webBrowser); WB = webBrowser; this.IsActive = true; }
public void Dispose() { UnsubscribEvents(); if (IsNew) { container.InvokeAction(container.Controls.Remove, WB); WB = null; } else { if (IsForAjaxUse) { ajaxWbQueue.Enqueue(WB); } else { wbQueue.Enqueue(WB); } } }
public IEDownloadManager(Func <string, string> getCookie, ExtendedWinFormsWebBrowser wb) { this.GetCookie = getCookie; this.wb = wb; }
public WebBrowserMode <TState> TransitionToNext <TState>(WebBrowserMode <TState> state, ExtendedWinFormsWebBrowser wb) where TState : IWebBrowserMode { this.Leave(); state.Enter(wb); return(state); }
protected abstract void LeaveModeInternal(ExtendedWinFormsWebBrowser webBrowser);
protected override void LeaveModeInternal(ExtendedWinFormsWebBrowser webBrowser) { webBrowser.ScrollBarsEnabled = true; webBrowser.ScriptErrorsSuppressed = true; }
protected override void LeaveModeInternal(ExtendedWinFormsWebBrowser webBrowser) { }