Tag: webbrowser control

如何在WebBrowser控件中注入CSS?

据我所知,有一种方法可以将javascript注入DOM。 下面是使用webbrowser控件注入javascript的示例代码: HtmlElement head = webBrowser1.Document.GetElementsByTagName(“head”)[0]; HtmlElement scriptEl = webBrowser1.Document.CreateElement(“script”); IHTMLScriptElement element = (IHTMLScriptElement)scriptEl.DomElement; element.text = “function sayHello() { alert(‘hello’) }”; head.AppendChild(scriptEl); webBrowser1.Document.InvokeScript(“sayHello”); 是否有更简单的方法将css注入DOM?

C#WebBrowser控制代理

如何在C#WebBrowser控件/组件中实现代理。 我想知道的是,如何实现代理,所以我的C#webBrowser控件在运行时使用此代理进行浏览。 我也不想通过注册表更改代理…因为它影响我的正常浏览…

从WebBrowser控件获取ReadyState而不使用DoEvents

这已经在这里以及其他网站和它的工作中多次被忽略了,但是我希望通过其他方式获得想法: 使用导航或发布后获取ReadyState = Complete,而不使用DoEvents因为它的所有缺点。 我还要注意,使用DocumentComplete事件在这里没有帮助,因为我不会只在一个页面上导航,而是像这样一个接一个地导航。 wb.navigate(“www.microsoft.com”) //dont use DoEvents loop here wb.Document.Body.SetAttribute(textbox1, “login”) //dont use DoEvents loop here if (wb.documenttext.contais(“text”)) //do something 今天的方式是使用DoEvents。 我想知道是否有人有正确的方法等待浏览器方法的异步调用,然后继续其余的逻辑。 只是为了它。 提前致谢。

Web浏览器控制限制

我在Windows窗体C#项目中使用WebBrowser控件,并想知道您可以同时运行多少个此类应用程序实例的任何限制。 (换句话说,MSFT强制执行除物理机器限制之外的任何限制 – CPU /内存等)

实现IDispatch :: Invoke由WebBrowser控件调用

我正在尝试在Controlling Download and Execution部分中Controlling Download and Execution他们在本文中解释的内容。 我理解该上下文中的Web Browser Control不是.NET的WebBrowser 。 我想要做的是控制WebBrowser控件下载的内容。 我一直在寻找这个并且总是在csEXWB ,它有一个巨大的代码,我无法破译。 到目前为止我所做的是inheritance.NET的WebBrowser ,通过使用[ComVisible(true)]属性使我的inheritance类com可见,将此方法添加到我的类(取自csEXWB): [DispId(HTMLDispIDs.DISPID_AMBIENT_DLCONTROL)] public int Idispatch_AmbiantDlControl_Invoke_Handler() { return (int)m_DLCtlFlags; } 然后调用这行代码,其中Browser是我的派生类的一个实例: IfacesEnumsStructsClasses.IOleControl oleControl = Browser.ActiveXInstance as IfacesEnumsStructsClasses.IOleControl; oleControl.OnAmbientPropertyChange(IfacesEnumsStructsClasses.HTMLDispIDs.DISPID_AMBIENT_DLCONTROL); 所以我希望oleControl将调用我的Idispatch_AmbiantDlControl_Invoke_Handler方法,而不是。 我不知道怎么样,这可能是我的代码丢失的原因,是oleControl应该知道调用我的Idispatch_AmbiantDlControl_Invoke_Handler方法的对象。 我上面链接的文章it will call your IDispatch::Invoke 。 你的意思是什么意思。 我如何告诉oleControl哪个对象是我的IDispatch 。 希望我有任何意义。

在WebBrowser中使用CookieContainer中的cookie

有没有办法可以实际使用cookie容器中的cookie(以前从WebRequest中获取)并在WebBrowser控件中使用它们? 如果是这样,我该怎么做? 这适用于C#中的Winforms应用程序。

在C#webBrowser控件中调用Javascript函数

我在C#中使用webBrowser控件来加载网页,需要调用返回字符串值的JavaScript函数。 我有一个使用InvokeScript方法的解决方案,我尝试了很多,但一切都失败了。

在WebBrowser控件中设置cookie

我正在使用WebBrowser的Navigatefunction加载网站,我希望浏览器加载带有我给它的cookie的页面。 以下代码不起作用: wb.Navigate(url, null, null, “Cookie: ” + cookie + “\n”); 我究竟做错了什么? 我必须使用InternetSetCookie吗? 这似乎不是最好的解决方案。

在新TAB中打开链接(WebBrowser控件)

有人知道如何在WinForms应用程序中单击WebBrowser控件中的链接,然后在我的TabControl中的新选项卡中打开该链接吗? 我已经搜索了几个月,看过很多教程/文章/代码示例,但似乎没有人曾经在C#中尝试过这个。 任何建议/样品都非常感谢。 谢谢。

如何使用WebBrowser控件以编程方式更改打印机设置?

我终于想出了如何在不提示用户或显示IE窗口的情况下打印转换后的XML ,但现在我需要指定一些副本以及可能的其他打印机设置。 有没有办法以编程方式更改WebBrowser控件上的打印机设置? 有问题的代码: private static void PrintReport(string reportFilename) { WebBrowser browser = new WebBrowser(); browser.DocumentCompleted += browser_DocumentCompleted; browser.Navigate(reportFilename); } private static void browser_DocumentCompleted (object sender, WebBrowserDocumentCompletedEventArgs e) { WebBrowser browser = sender as WebBrowser; if (null == browser) { return; } browser.Print(); browser.Dispose(); }