问题标签 [webbrowser-control]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3593 浏览

.net - 如何在 WebBrowser 控件中设置当前 document.domain 以避免“访问被拒绝”?

如何document.domain在 WebBrowser Control 中设置 current 以避免跨域调用(XMLHTTP 请求或 Iframe/frame 访问)中的“访问被拒绝”?

我试过了

这不起作用,不知何故它永远不会到达console.writeline

难道我做错了什么?还是我应该使用WebBrowserControl.ActiveXInstance

0 投票
1 回答
539 浏览

.net - 在 .NET 中实现 IHttpSecurity(托管代码)

如何在 .NET 中为 Webbrowser Control 实现 IHttpSecurity?

我找不到任何示例,所有示例都在 C++ 中,MSDN 文档也仅适用于 C++

0 投票
5 回答
7141 浏览

.net - 如何在 Webbrowser 控件中执行跨域请求?

如您所知,出于安全原因,在 Internet Explorer 下不允许执行跨域 XMLHTTP 请求。

我有一个 WebBrowser 控件,我正在使用DocumentText而不是NavigateURL。由于当前域是about:blank页面尝试向自身或其他域发出请求时,我收到了Access is deniedJavascript 错误。

即使我使用NavigateJavascript 向另一个域发出请求,它也不起作用。

我怎样才能解决这个问题?

此 HTML 代码应与 WebBrowser 控件一起使用:

0 投票
2 回答
1307 浏览

c# - 如何从 WebBrowser.ShowPageSetupDialog 获取对话框结果

我在我的 Visual C# (.net 2.0) 应用程序中使用 WebBrowser 控件。
现在我想添加一个打印按钮,它显示页面设置对话框,然后在用户按下 OK 按钮时直接打印,或者在用户按下取消按钮时取消打印。
但是 WebBrowser.ShowPageSetupDialog 不返回 DialogResult,而只是无效。
有没有我错过的东西或任何其他方式来了解用户的行为?

0 投票
3 回答
2462 浏览

c# - WebBrowser 控件:如何覆盖 URL 属性

这有点特别:
我通过 DocumentText 属性将一些字符串形式的 HTML 加载到 WebBrowser 控件中。
现在,当我使用 PDF 打印机(在我的情况下为 Bullzip PDF 打印机)打印页面时,它总是将 URL 作为文档名称,即“about:blank”。
有没有办法通过更改 URL 属性(它是只读的)或通过更改打印行为以使用另一个文本而不是 URL 作为文件名来将其更改为另一个值?

0 投票
2 回答
1072 浏览

.net - 在 .NET 中实现 IInternetZoneManager

我正在尝试使用 Webbrowser Control 在 .NET 中实现IInternetZoneManager,但我不知道该怎么做。

我找不到有关此实现的任何托管代码示例。我对 OLE 的东西很不满意。

任何人都可以提供一个样本吗?我花了大约 2 天没有运气。

0 投票
8 回答
52192 浏览

c# - 如何清除 System.Windows.Forms.WebBrowser 会话数据?

如何在不重新启动应用程序的情况下清除当前会话数据(cookie、缓存数据、身份验证会话等)?

更新:我说的是 Windows.Forms 中的 WebBrowser 控件,而不是 ASP.Net 会话。

0 投票
1 回答
972 浏览

c# - 如何检测 jQuery 是否在 WinForm WebBrowser 控件中导航到的文档中?

我在 C#/Visual Studio 2008 中有一个带有 IE WebBrowser 控件的 Windows 窗体应用程序。在 DocumentCompleted 事件中,我想搜索 WebBrowser.Document 或 WebBrowser.DomDocument 以查看页面中是否已经存在 jQuery。

有什么好方法可以做到这一点?

谢谢!

0 投票
2 回答
1424 浏览

c++ - 调整由 IE 中的资源管理器栏托管的 Web 浏览器控件的大小

我有一个托管 webbrowser 控件的自定义资源管理器栏(带​​对象)。我可以正确初始化 WebBrowser 控件并让它显示网页。

但是,我注意到,当我调整资源管理器栏的大小时,webbrowser 控件不会适当地调整到栏的大小:

调整大小之前:

调整大小之前

调整大小后:

调整大小后

我不确定我需要处理哪些事件以及什么可以调整浏览器控件的大小。我在 .NET 编程方面有一些经验,但在 Windows 编程方面却没有。

如果您想进一步了解它,我还在这里包含了我的源代码。

0 投票
1 回答
1545 浏览

internet-explorer - IE 自动化:如何确定用户启动的导航何时发生/已经发生?

我有一个 Internet Explorer BHO(在 c# .net 中)并且想要识别用户何时启动导航或用户启动导航何时完成。用户发起我的意思是点击一个链接或类似的动作。特别是如果正在加载的文档中有多个框架,我想将它们视为一个“导航”,但我想不出任何简单的方法来做到这一点。我知道 BeforeNavigate2 和 DocumentComplete 事件,但是看不到任何方法来区分用户单击链接时触发的 BeforeNavigate/DocumentComplete 和由于框架正在加载而触发。

我在想的一种可能的解决方案是,顶部框架的 BeforeNavigate2 总是在内部框架之前被触发(显然),然后子框架的 DocumentComplete 在顶部的 DocumentComplete 之前被调用,它总是最后调用. 因此,例如,我可以在 BeforeNavigates 中增加一个计数器并在 DocumentComplete 中减少它,只有当它为 0 时,它才是用户启动的导航。

但我不确定我是否可以依靠这个,或者是否有更好的方法来做到这一点。例如,如果用户在其中一帧后按下 ESC 但并非所有帧都完成加载会发生什么情况:是否曾调用顶部帧的 DocumentComplete?

有什么建议么?