C#Web浏览器:用户提交表单时获取输入文本的内容

时间:2013-10-21 00:39:26

标签: c# events browser submit

我的C#应用​​程序上有一个Web浏览器控件。我想在用户点击提交按钮(或更改页面)时获取用户在表单文本输入中输入的值。

我知道我可以使用:

webBrowser1.Document.GetElementById("inputA").InnerText

获取输入标记的值。

我的问题是,如何检测提交事件,以便将此值存储到字符串中?

1 个答案:

答案 0 :(得分:0)

我不知道你是否仍在使用这个,因为你在一个月前发布了这个,但如果你是,这里有一个选择:

如果你正在展示你的文件? 如果您能够稍微更改html代码,则可以相当简单地完成:

首先把它放在你的类声明之上:

[System.Runtime.InteropServices.ComVisibleAttribute(true)]

这样浏览器就可以看到你的课程。 您还需要将类设置为文档的脚本对象。即:(只需要设置一次)

webBrowser1.ObjectForScripting = this;

对于HTML,您可以执行以下操作:

<input type=submit onClick="window.external.doSomething()">

最后,你需要一个公共方法来调用(obv):

public void doSomething()
{
   string whatever = webBrowser1.Document.GetElementById("inputA").InnerText;
}

我不熟悉webbrowser控件,所以如果你不是自己创建web文件,我担心这不会起作用。

祝你好运