2010-03-26 60 views
0

一个形式包含很多元素,如标签,文本框,单选选项框等Web浏览器控件:在形式内容检测变化

你如何检测用户已经改变了一个文本框输入值,或有在Web浏览器控件的内容中选择一个广播选项?(不是winform本身)。

你处理,当鼠标点击或键盘按键按下一个winform事件?还是有更好的方法来检测网页浏览器内容的变化?

+0

我看了你的话说清楚,检测WebBrowser控件内的变化是一个目标:但是当你问的WinForms事件,鼠标点击,按键,我不知道,如果你现在说话的场景,其中的WebBrowser控件不再具有“焦点”和“表单”上的“东西”正在接收这些事件。你能澄清一点吗?看看我对这个问题的答案http://stackoverflow.com/questions/2474586/how-can-i-make-a-hotkey-trigger-a-winforms-button/2474698#2474698关于使用WebBrowser'PreviewKeyDown事件:可能是相关的。 – BillW 2010-03-27 12:07:29

回答

0

有“快速和容易”的方式,但恕我直言,更好的办法是加载形式为JavaScript变量的状态(负载),然后比较只有你有兴趣,导航离开时的元素,管他呢。

例如,可能有一些字段不那么相关(比方说,在一个较小的下拉框不同的值),但是一些是非常重要的(即,该消息框的内容)。

无论如何这是相当微不足道的;只需检查您当前的值(您正在捕获的给定事件,即浏览器关闭),然后将它们与您保存的值进行比较。

+0

什么这样做了的keyPressed或鼠标移动事件?---------------- 如果(webBrowser1..Document.GetElementById(“NAME”)的getAttribute(“值” )!= strDefaultNameValue){ //场改变 } – 001 2010-03-27 00:11:25

+0

似乎有点浪费这样做对每一个按键,不是吗? – 2010-03-27 00:36:38