Tag: webbrowser control

WinForms中的CKEditor Dropdown工具栏未注册单击事件

我目前在C#(Framework 3.5)的WinForms的WebBrowser控件中遇到了CKEditor(版本4.4.0)的问题。 我正在使用UIColor和字体大小/系列选项与编辑器 – 当我在IE中加载页面时工作正常。 通过WebBrowser控件,尝试选择颜色或字体(或右键单击剪切/复制/粘贴菜单)时的单击事件永远不会注册。 我注意到,如果我使用键盘选择选项并按Enter键,一切都按预期工作。 ckeditor方面似乎正在发生的事情是它为控件创建一个div,在该div中加载一个iframe并生成HTML,这样你就可以得到一个很好的,丰富的显示,你会选择哪种字体等等。这已加载,WebBrowser控件无法识别该iframe中新创建的HTML,并将其视为单击时不存在。 即如果我点击颜色并且该颜色下有另一个按钮,其他按钮点击事件就会被注册。 有没有办法告诉Web浏览器控件实际上有什么东西 – 或者强制它读取新渲染的代码? 我注意到,当我点击字体或颜色时,Navigating事件也会被触发,但之后它永远不会进入DocumentCompleted / Navigated例程。 虽然我安装了IE11,但我的WinForms应用程序中的Web浏览器控件在IE 9设置下运行(使用FEATURE_BROWSER_EMULATION = 9000)。 我也尝试过使用FEATURE_BROWSER_EMULATION = 11000,也没有成功。 有什么想法在这里做什么? HTML: Editor Test $(document).ready(function () { $(“#uxBody”).ckeditor(); for (var i in CKEDITOR.instances) { CKEDITOR.instances[i].on(‘change’, function () { pageIsDirty = true; }); } }); Correspondence Subject: *Body: CK编辑器配置文件: CKEDITOR.editorConfig = function (config) { […]

如何区分用户单击链接和执行自动重定向的页面?

在我的WinForms应用程序中有一个C# WebBrowser控件 ,并且知道Navigating事件 ,我从来没有想出一个漂亮而优雅的解决方案: 如果用户主动导航到另一个URL,我想允许它。 如果页面“自己”重定向到另一个URL,我想取消它。 对于案例1 ,我可以想到一些案例: 用户单击标记并评估href属性以加载另一个URL。 用户使用onclick javascript事件处理程序单击元素,该处理程序调用使用window.location加载另一个URL的函数。 对于案例2,我可以想象: 加载的页面包含一个iframe标记,用于在IFrame中加载URL。 这会触发Navigating事件。 有一些JavaScript计时器在页面加载时启动,当它触发时,它使用window.location加载另一个URL。 加载的页面包含meta refresh标头标记,以在几秒钟后加载另一个URL。 所以我的问题是: 如何在Navigating事件(或任何其他机制)内部检测重定向是由用户显式触发还是由页面隐式触发? 更多信息 WebBrowser正在基于Windows的CMS后端应用程序中使用。 因此,我可以完全控制WebBrowser控件中加载的内容。 这意味着如果需要,我可以在发送到浏览器之前操作完整的HTML字符串。 如果它更适用,我也很乐意获得只能使用JavaScript的解决方案,我可以将其注入正在加载的HTML中。 (请注意,我确实认为这不是此SOpost的重复)

获取WebBrowser控件的back / fwd历史记录

在C#WinForms中,获取System.Windows.Forms.WebBrowser的后向/前向历史堆栈的正确方法是什么?

WebBrowser从我的表单“窃取”KeyDown事件

我在Form有一个WebBwoser ,我想捕获Ctrl + O组合键以用作菜单项的快捷方式。 我的问题是,如果我单击WebBrowser并按Ctrl + O,将弹出一个Internet Explorer对话框,而不是执行我的菜单项。 我将Form的KeyPreview属性设置为true 。 此外,我为KeyDown事件添加了一个事件处理程序,但在单击WebBrowser后它停止调用。 我怎样才能解决这个问题?

是否有WebDriver Navigated事件?

.NET WebBrowser具有Navigated事件。 Selenium WebDriver是否有类似的事件? 我搜索过但没找到任何东西。

WebBrowser网站超时

这适用于Visual Studio Express 2012中的Desktop C#应用程序。 我使用webBrowser控件登录到各种网站,但发现一些没有响应和超时。 我怀疑它可能是webBrowser控件固有地运行IE7,但发现这些网站在运行IE7作为本机浏览器的旧PC上运行良好。 我是否需要设置webBrowser中的某些内容以允许诸如下面代码中的网站来处理响应? 下面的代码导航到我遇到问题的网站。 如果在本机浏览器中输入Login和Password的任何值,它会立即响应并抛出错误,但在webBrowser中它会在那里等待响应并最终超时。 任何帮助将不胜感激! 米克 namespace WindowsFormsApplication11 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { webBrowser1.Navigate( “https://www.my.telstra.com.au/myaccount/home?red=/myaccount/”); } } }

WebBrowser控件:导航到网页已取消

建立 Windows 8(完整)平板电脑 .NET 2.0应用程序 我正在开发一个项目,其中4个WebBrowser控件在加载应用程序时同时导航到某个网页。 网页具有相同的HTML,但来自不同的Web服务器。 问题是其中一些页面在WebBrowser控件中显示“导航到网页已取消”消息。 这仅在应用程序启动时发生。 我已经实现了这里描述的解决方案来获取返回的状态代码,奇怪的是,它是200 = OK状态。 当我刷新页面时,它突然正常工作。 我怀疑问题可能是由同时导航造成的,但我不知道如何validation。 有任何想法吗?

C#WebBrowser将鼠标单击事件发送到Flash对象

我一直在看书,但似乎没有找到这个问题的答案。 目标是:我在Windows窗体项目中有一个WebBrowser 。 有一个HTML页面加载,在该HTML页面中有一个Flash对象。 我的目标是将鼠标单击发送到该Flash对象的(x,y)位置。 (期望的)必需品 具有Windows窗体可执行文件的窗口不需要处于活动状态,以使其正常工作 不得捕获鼠标 基于相对于Flash对象或网页的坐标(x,y)发送鼠标单击 例 想象一下,我在WebBrowser中打开任何Tower Defense游戏。 我想模拟点击购买和放置新塔。 在进程期间,用户不得放松对鼠标的控制。 如果在像素(x,y)=(30,50)是一个按钮,我想点击该按钮,我可以通过调用类似WebBrowser.simulateLeftClick(30, 50) 。

什么可能导致这个内存问题?

我正在为Windows Phone 8开发应用程序,我遇到了内存泄漏问题。 但首先是一些背景。 该应用程序(不幸的是)使用WebBrowsers作为页面。 页面非常复杂,涉及很多javascript。 应用程序的本机部分用c#编写,负责与javascript进行一些简单的通信(例如,native是javascript与服务器通信的委托),制作用于页面转换,跟踪,持久性等的动画。是在一个独特的PhoneApplicationPage中完成的。 在我因内存不足exception而崩溃之后,我开始分析应用程序。 我可以看到WebBrowsers,它是应用程序的重要组成部分,正在正确处理。 但我看到的问题是内存不断增加。 更糟糕的是,我对分析器的反馈很少。 根据我的理解,分析器图表说存在一个大问题,而分析器数据表明根本没有问题…… 注意:该步骤表示从WebBrowser到另一个WebBrowser的导航。 通过两个控件之间的动画创建(我猜)尖峰。 在我在图像中选择的范围中,我正在向前导航,一个向后导航,最多有5个WebBrowsers(2个用于总是存在的菜单,1个用于索引页,1个用于我导航的页面和1个对于我导航到的页面)。 在每个导航中,探查器显示正确数量的WebBrowsers:向前导航后为5,向后导航后为4。 注2:我添加了红线,以便更清楚地知道内存在这段时间内会上升 从图像中可以看出 内存使用量相当大,但数字显示它很低,在这段时间内,保留分配低于启动时… 我希望我已经包含了足够的信息。 我想知道可能导致这个问题的一些想法。 我到目前为止的想法是: – WebBrowser中的javascript做错了(例如没有清理一些事件处理程序)。 即使是这种情况,WebBrowser也不应该在销毁时释放内存吗? – 使用一个独特的PhoneApplicationPage是不应该做的邪恶,改变它的结构可能会导致这种情况。 -其他? 另一个问题:为什么图表显示正确的内存使用量而数字没有? 如果您需要有关探查器的更多信息,请询问,我将在明天发布。

C #Windows.Forms.WebBrowser缩放

我的Windows窗体应用程序中有一个WebBrowser控件,想要更改我正在加载的HTML页面的“缩放级别”(在我的案例中是Bing地图)。 我希望在’Document’属性级别找到这样做的方法,但是没有可以使用的缩放或高度/宽度/大小属性(在浏览器级别,但我不想调整控件本身的大小) 。 附上我想做的照片。 有什么想法吗? 谢谢。 浏览器缩放问题