private void Load(string address) { if (address != this.DefaultLocalUrl) { this.htmlToLoad = null; } if (address.Contains(Uri.SchemeDelimiter) || address == "about:blank" || address.StartsWith("data:")) { if (WebView.CustomSchemes.Any((string s) => address.StartsWith(s + Uri.SchemeDelimiter))) { this.IsSecurityDisabled = true; } else { this.IsSecurityDisabled = false; } this.ExecuteWhenInitialized(delegate { this.chromium.Load(address); }); return; } Assembly assembly = WebView.GetUserCallingMethod(false).ReflectedType.Assembly; this.Load(new ResourceUrl(assembly, new string[] { address }).WithDomain(this.CurrentDomainId)); }
public ReactViewRender(bool preloadWebView) { this.userCallingAssembly = WebView.GetUserCallingMethod(false).ReflectedType.Assembly; this.webView = new InternalWebView(this, preloadWebView) { DisableBuiltinContextMenus = true, IgnoreMissingResources = false }; this.webView.AttachListener("Ready", delegate { this.IsReady = true; }, false); this.webView.Navigated += this.OnWebViewNavigated; this.webView.Disposed += this.OnWebViewDisposed; this.webView.BeforeResourceLoad += this.OnWebViewBeforeResourceLoad; this.webView.Dock = DockStyle.Fill; this.Controls.Add(this.webView); //base.Content = this.webView; string[] value = new string[] { ReactViewRender.UseEnhancedRenderingEngine ? "1" : "0", ReactViewRender.LibrariesPath, "__Modules__", "__WebviewListener__", "Ready" }; this.webView.LoadResource(new ResourceUrl(typeof(ReactViewRender).Assembly, new string[] { ReactViewRender.DefaultUrl + "?" + string.Join("&", value) })); }