2

我有一个WebBrowser控件WinForm,在其中我显示了一个带有 jQ​​uery 的对话框,其中包含一个文本区域和一个标有“保存”的按钮,其目的是从用户那里获取数据。

当用户单击保存按钮时,我希望检索文本区域中的文本并将其存储在我的 WinForm 应用程序的变量中。

这可能吗:jQuery 函数将值返回给 WinForm 应用程序?

4

2 回答 2

3

是的。

如果您打算使用WebBrowserWindowsForm 的标准控件,请查看以下属性:WebBrowser.ObjectForScripting-- 底部有一个非常有用的示例,向您展示了如何执行回调到您的应用程序的 Javascript。

就个人而言,我不喜欢为 WinForms 或 WPF 提供的 WebBrowser 控件——它们只是 Internet Explorer 的 COM 包装器。我更喜欢使用Awesomium.NET

于 2012-09-06T04:24:00.220 回答
2

您是特别想使用 jQuery 来执行此操作,还是只想进行双向通信?使用 jQuery 或传统的 Web 实践将需要在某处运行 Web 服务器以供页面查询。

如果您只需要双向通信,请设置WebBrowser.ObjectForScripting属性。这会将 .Net 对象公开给网页上的 JavaScript 代码,如window.external. 然后页面上的 JavaScript 代码可以调用该对象上的方法和属性以与您的 WinForms 应用程序通信,例如在按下“保存”按钮时从文本区域存储文本。

有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/a0746166.aspx

于 2012-09-06T04:23:46.227 回答